Android 扩展另一个活动类,并将侦听器代码重用到按钮等视图
我创建了一个名为ButtonActivity的活动,它有很多按钮和侦听器。我想创建另一个活动TwoButtonActivity来扩展ButtonActivity,以便可以恢复我创建的侦听器。 TwoButtonActivity与ButtonActivity类似,但变化不大。 这可能吗Android 扩展另一个活动类,并将侦听器代码重用到按钮等视图,android,android-activity,extends,code-reuse,Android,Android Activity,Extends,Code Reuse,我创建了一个名为ButtonActivity的活动,它有很多按钮和侦听器。我想创建另一个活动TwoButtonActivity来扩展ButtonActivity,以便可以恢复我创建的侦听器。 TwoButtonActivity与ButtonActivity类似,但变化不大。 这可能吗 当我执行代码时,我发现扩展活动没有响应按钮单击 以下是基本活动: public class ButtonActivity extends Activity { int count = 0; @Override p
当我执行代码时,我发现扩展活动没有响应按钮单击 以下是基本活动:
public class ButtonActivity extends Activity {
int count = 0;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
final Button button = (Button) findViewById(R.id.button);
button.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
button.setText("Got Pressed:" + ++count);
}
});
}
}
以下是扩展活动:
public class TwoButtonsActivity extends ButtonActivity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
}
}
您可以使用下面相同的侦听器进行活动
public class ButtonActivity extends Activity {
int count = 0;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//setContentView(R.layout.main);
}
public void mylistener1(View v)
{
switch(v.getid()){
case R.id.button:{
//do somthings
}break;
}}
public class TwoButtonsActivity extends ButtonActivity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
}
}
在TwoButtonActivity(main)的布局中,您可以在按钮的标签中设置android:onclick=“mylistener1”
您应该设置为您想要的任何按钮或视图使用此侦听器是的,这是可能的,您的代码应该可以工作。此外,亲自尝试应该比在此处等待答案更快,因此,除非您的代码确实有问题,否则我将投票结束此问题。当我执行代码时,我发现扩展活动没有响应按钮单击。您确定引用的是相同的按钮ID吗?如果您对setContentView(R.layout.main)进行注释; 在TwoButton活动中,您的代码将运行,您不需要使用我的代码