我正在使用按钮转到我的应用程序中的某个页面,但只要单击该按钮,该应用程序就会崩溃。没有gradle构建错误。
在父类中,我使用了这段代码。这条代码在过去对我有用而没有任何问题。每当我将鼠标悬停在按钮2上时,它表示从未使用过'button2(android.view.View)',我已经导入了上面的android view.View。
public void button2(View view){
Intent intent = new Intent(this, prepo.class);
startActivity(intent);
}
然后我在Android清单中使用了它。
<activity
android:name=".prepo"
android:label="About"
android:parentActivityName=".BitRates">
</activity>
我父类中的xml如下所示。
<Button
android:text="About"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_above="@+id/textView6"
android:layout_centerHorizontal="true"
android:id="@+id/button2"
style="@style/Widget.AppCompat.Button.Borderless"
android:background="?android:attr/colorBackground"
android:backgroundTint="?android:attr/colorBackground"
android:onClick="button2 (BitRates)" />
我之前在开发应用程序时使用过它,它已经运行,没有任何错误或崩溃。
编辑:
错误日志。
E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.example.user.name, PID: 3101
java.lang.IllegalStateException: Could not find method button2 (BitRates)(View) in a parent or ancestor Context for android:onClick attribute defined on view class android.support.v7.widget.AppCompatButton with id 'button2'
at android.support.v7.app.AppCompatViewInflater$DeclaredOnClickListener.resolveMethod(AppCompatViewInflater.java:307)
at android.support.v7.app.AppCompatViewInflater$DeclaredOnClickListener.onClick(AppCompatViewInflater.java:266)
at android.view.View.performClick(View.java:5198)
at android.view.View$PerformClick.run(View.java:21147)
at android.os.Handler.handleCallback(Handler.java:739)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:148)
at android.app.ActivityThread.main(ActivityThread.java:5417)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
Application terminated.
解决了,来自
的xml变化 android:onClick="button2 (BitRates)"
到这个
android:onClick="button2" />
答案 0 :(得分:1)
将按钮xml代码更新为:
<Button
android:text="About"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_above="@+id/textView6"
android:layout_centerHorizontal="true"
android:id="@+id/button2"
style="@style/Widget.AppCompat.Button.Borderless"
android:background="?android:attr/colorBackground"
android:backgroundTint="?android:attr/colorBackground"
android:onClick="button2" />
以上代码的作用是触发您活动的方法button2
。之前它正在搜索以下方法名称:您的活动中的button2 (BitRates)