gpt4 book ai didi

android - 编译器看不到新方法名称 - 构建问题但运行时错误。 "java.lang.IllegalStateException: Could not find a method"

转载 作者:行者123 更新时间:2023-11-30 02:22:58 25 4
gpt4 key购买 nike

我以常规方式从现有类创建了一个新的 Activity 类,然后从我的 ScanActivity.class 中剪切并粘贴了代码,因为新类将非常相似。

新类是 SenderActivity2.class。我还更改了 XML onClick 处理程序,使其具有 onPicButtonClicked 监听器,而不是 ScanActivity 类的 onScanButtonClicked。

gradle 构建和项目构建一样有效,但在运行时单击按钮失败。

您可以在 logcat 中看到它仍在寻找 onScanButtonClicked 方法。我实际上进去并将方法名称改回 onScanButtonClicked 即使该方法在另一个类中以查看它是否会以某种方式工作。它做了。此外,当我第一次创建新类并自动生成 XML 时,为 XML 创建的名称存在问题。我认为这可能是问题根源的重要线索。我删除了主目录中的 .gradle 文件并强制它重建所有内容,但这没有帮助。希望你们中的一些人遇到过类似的事情。我知道某处有一个文件需要重建..只是不知道它是什么或在哪里。

01-29 22:19:57.714  12606-12606/com.blissbot.hallmarktest I/SELinux﹕ Function: selinux_android_load_priority [0], There is no sepolicy file.
01-29 22:19:57.714 12606-12606/com.blissbot.hallmarktest I/SELinux﹕ Function: selinux_android_load_priority , loading version is VE=SEPF_SPH-L720T_4.4.2_0032
01-29 22:19:57.714 12606-12606/com.blissbot.hallmarktest I/SELinux﹕ selinux_android_seapp_context_reload: seapp_contexts file is loaded from /data/security/spota/seapp_contexts
01-29 22:19:57.714 12606-12606/com.blissbot.hallmarktest D/dalvikvm﹕ Late-enabling CheckJNI
01-29 22:19:57.844 12606-12606/com.blissbot.hallmarktest W/ApplicationPackageManager﹕ getCSCPackageItemText()
01-29 22:19:57.904 12606-12606/com.blissbot.hallmarktest E/MoreInfoHPW_ViewGroup﹕ Parent view is not a TextView
01-29 22:19:58.014 12606-12606/com.blissbot.hallmarktest I/Adreno-EGL﹕ <qeglDrvAPI_eglInitialize:381>: EGL 1.4 QUALCOMM build: (CL3869936)
OpenGL ES Shader Compiler Version: 17.01.11.SPL
Build Date: 01/17/14 Fri
Local Branch:
Remote Branch:
Local Patches:
Reconstruct Branch:
01-29 22:19:58.064 12606-12606/com.blissbot.hallmarktest D/OpenGLRenderer﹕ Enabling debug mode 0
01-29 22:20:00.066 12606-12606/com.blissbot.hallmarktest W/ApplicationPackageManager﹕ getCSCPackageItemText()
01-29 22:20:00.086 12606-12606/com.blissbot.hallmarktest E/MoreInfoHPW_ViewGroup﹕ Parent view is not a TextView
01-29 22:20:00.106 12606-12606/com.blissbot.hallmarktest D/dalvikvm﹕ Trying to load lib /data/app-lib/com.blissbot.hallmarktest-114/libjmoodstocks-sdk.so 0x429498b8
01-29 22:20:00.106 12606-12606/com.blissbot.hallmarktest D/dalvikvm﹕ Added shared lib /data/app-lib/com.blissbot.hallmarktest-114/libjmoodstocks-sdk.so 0x429498b8
01-29 22:20:00.106 12606-12606/com.blissbot.hallmarktest D/dalvikvm﹕ No JNI_OnLoad found in /data/app-lib/com.blissbot.hallmarktest-114/libjmoodstocks-sdk.so 0x429498b8, skipping init
01-29 22:20:00.106 12606-12606/com.blissbot.hallmarktest D/dalvikvm﹕ Trying to load lib /data/app-lib/com.blissbot.hallmarktest-114/libjmoodstocks-sdk-core-armv7-neon.so 0x429498b8
01-29 22:20:00.106 12606-12606/com.blissbot.hallmarktest D/dalvikvm﹕ Added shared lib /data/app-lib/com.blissbot.hallmarktest-114/libjmoodstocks-sdk-core-armv7-neon.so 0x429498b8
01-29 22:20:00.106 12606-12606/com.blissbot.hallmarktest D/dalvikvm﹕ No JNI_OnLoad found in /data/app-lib/com.blissbot.hallmarktest-114/libjmoodstocks-sdk-core-armv7-neon.so 0x429498b8, skipping init
01-29 22:20:00.166 12606-12606/com.blissbot.hallmarktest D/Moodstocks SDK﹕ Sync will start.
01-29 22:20:00.376 12606-12606/com.blissbot.hallmarktest D/Moodstocks SDK﹕ Sync succeeded (7 images)
01-29 22:20:06.342 12606-12606/com.blissbot.hallmarktest D/AndroidRuntime﹕ Shutting down VM
01-29 22:20:06.342 12606-12606/com.blissbot.hallmarktest W/dalvikvm﹕ threadid=1: thread exiting with uncaught exception (group=0x41708da0)
01-29 22:20:06.352 12606-12606/com.blissbot.hallmarktest E/AndroidRuntime﹕ FATAL EXCEPTION: main
Process: com.blissbot.hallmarktest, PID: 12606
java.lang.IllegalStateException: Could not find a method onScanButtonClicked(View) in the activity class com.blissbot.hallmarktest.SenderActivity2 for onClick handler on view class android.widget.Button with id 'button'
at android.view.View$1.onClick(View.java:3956)
at android.view.View.performClick(View.java:4633)
at android.view.View$PerformClick.run(View.java:19330)
at android.os.Handler.handleCallback(Handler.java:733)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:157)
at android.app.ActivityThread.main(ActivityThread.java:5356)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:515)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1265)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1081)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.NoSuchMethodException: onScanButtonClicked [class android.view.View]
at java.lang.Class.getConstructorOrMethod(Class.java:472)
at java.lang.Class.getMethod(Class.java:857)
at android.view.View$1.onClick(View.java:3949)
            at android.view.View.performClick(View.java:4633)
            at android.view.View$PerformClick.run(View.java:19330)
            at android.os.Handler.handleCallback(Handler.java:733)
            at android.os.Handler.dispatchMessage(Handler.java:95)
            at android.os.Looper.loop(Looper.java:157)
            at android.app.ActivityThread.main(ActivityThread.java:5356)
            at java.lang.reflect.Method.invokeNative(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:515)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1265)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1081)
            at dalvik.system.NativeStart.main(Native Method)
01-29 22:20:08.074 13193-13193/com.blissbot.hallmarktest W/ApplicationPackageManager﹕ getCSCPackageItemText()
01-29 22:20:08.124 13193-13193/com.blissbot.hallmarktest E/MoreInfoHPW_ViewGroup﹕ Parent view is not a TextView
01-29 22:20:08.234 13193-13193/com.blissbot.hallmarktest I/Adreno-EGL﹕ <qeglDrvAPI_eglInitialize:381>: EGL 1.4 QUALCOMM build: (CL3869936)
OpenGL ES Shader Compiler Version: 17.01.11.SPL
Build Date: 01/17/14 Fri
Local Branch:
Remote Branch:
Local Patches:
Reconstruct Branch:
01-29 22:20:08.284 13193-13193/com.blissbot.hallmarktest D/OpenGLRenderer﹕ Enabling debug mode 0

SenderActivity2 代码..

public class SenderActivity2 extends Activity implements Scanner.SyncListener {

// Moodstocks API key/secret pair
private static final String API_KEY = "xxxxxxxxxxxxxxxxxx";
private static final String API_SECRET = "xxxxxxxxxxxxxxxxxx";

private boolean compatible = false;
private Scanner scanner;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_recipient);

compatible = Scanner.isCompatible();
if (compatible) {
try {
scanner = Scanner.get();
String path = Scanner.pathFromFilesDir(this, "scanner.db");
scanner.open(path, API_KEY, API_SECRET);
scanner.setSyncListener(this);
scanner.sync();
} catch (MoodstocksError e) {
e.printStackTrace();
}
}

}// On Create END

@Override
protected void onDestroy() {
super.onDestroy();
if (compatible) {
try {
scanner.close();
scanner.destroy();
scanner = null;
} catch (MoodstocksError e) {
e.printStackTrace();
}
}
}


public void onPicButtonClicked(View view) {
if (compatible) {
startActivity(new Intent(this, PicActivity.class));
}
}

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".SenderActivity2"
android:background="@drawable/hallmark_2">

<TextView
android:focusable="false"
android:selectable="false"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/tapcrownTextPic"
android:textSize="18sp"
android:text="@string/touch_crown"
android:background="@color/white"
android:layout_marginTop="107dp"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true" />

<Button
android:layout_width="150dp"
android:layout_height="200dp"
android:id="@+id/buttonPic"
android:visibility="visible"
android:background="@null"
android:layout_below="@+id/tapcrownTextPic"
android:layout_alignLeft="@+id/tapcrownTextPic"
android:layout_alignStart="@+id/tapcrownTextPic"
android:layout_marginTop="25dp"
android:onClick="onPicButtonClicked" />

新信息

我注意到错误是指按钮。你可以在截图中看到我已经重命名了它,但它仍然认为它的“按钮” enter image description here Activity_Sender_2  Design and Text views showing "button" "buttonPic" and onClick handler

buttonPic Design View

enter image description here

最佳答案

只需添加公共(public)无效 onScanButtonClicked( View ){}SenderActivity2 类中的方法。

您必须添加此方法,因为您在各自的 xml 中定义了 onScanButtonClicked。

关于android - 编译器看不到新方法名称 - 构建问题但运行时错误。 "java.lang.IllegalStateException: Could not find a method",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28229745/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com