Android:Button onClick自定义类中的描述
我的按钮:Android:Button onClick自定义类中的描述,android,Android,我的按钮: <Button android:id="@+id/Btn_Scr1_to_Scr2" android:text="Text" android:onClick="Go_to_Scr2"/> public void Go_to_Scr2(View v){ Intent intent = new Intent(this, MainMenuActivity.class); startActiv
<Button
android:id="@+id/Btn_Scr1_to_Scr2"
android:text="Text"
android:onClick="Go_to_Scr2"/>
public void Go_to_Scr2(View v){
Intent intent = new Intent(this, MainMenuActivity.class);
startActivity(intent);
}
如果我在主要活动中使用它类:
public class MainScreenActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main_screen);
}
public void Go_to_Scr2(View v){
Intent intent = new Intent(this, MainMenuActivity.class);
startActivity(intent);
}
}
public class MyMethods extends MainScreenActivity {
public void Go_to_Scr2(View v){
Intent intent = new Intent(this, MainMenuActivity.class);
startActivity(intent);
}
}
。。。它起作用了
但是,如果我尝试在自定义类中使用此方法:
public class MainScreenActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main_screen);
}
public void Go_to_Scr2(View v){
Intent intent = new Intent(this, MainMenuActivity.class);
startActivity(intent);
}
}
public class MyMethods extends MainScreenActivity {
public void Go_to_Scr2(View v){
Intent intent = new Intent(this, MainMenuActivity.class);
startActivity(intent);
}
}
…它导致我的应用程序崩溃
小结:我有一个方法,它位于扩展创建视图所用的上下文类的类中,但它不起作用(Log Cat中的NoSuchMethodException):
我的错在哪里?谢谢 Android文档中说:“Android系统调用活动的public方法。为了使其有效,该方法必须是public的,并且接受视图作为其唯一参数。”
它应该只在活动类中工作。在该类中,您正在为两个页面的按钮编写代码的xml
android:onClick
属性尝试使用反射找到正确的方法。当您尝试使用子类执行此操作时,可能会失败。一般来说,我不喜欢在main_screen.xml中使用android:onCLick
attribute.Sree,我认为这行代码可以解决这个问题:公共类MyMethods扩展了MainScreenActivity