我想知道是否有任何方法可以为不同的按钮调用相同的 Activity ,但为每个按钮执行不同的操作..
更具体地说..我有一个 Activity ,上面有大约 10 个按钮,如果我按照传统方式进行,每次按下按钮时,我都必须为每个按钮创建一个 Activity ,因此,我将拥有超过 15 个 java 文件..
所以,我想知道是否有任何方法,所有按钮都显示相同的 Activity (这很容易,我将“Intent ”显示相同的 Activity ),但是在该 Activity 上,根据我按下的按钮,执行不同的操作..
例如,所有按钮都显示在 Buttons.java 上,但内部存在一个 TextView,并且每次显示另一个文本,具体取决于我按下的按钮 -> Text1(对于 Button1), Text2(用于 Button2)、Text3(用于 Button3)...
你有什么想法??谢谢!!
最佳答案
当你想启动它时,你可以向它传递一些信息...例如:
button1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(getContext(), ExampleActivity.class);
//There is no limit for number of Extras you want to pass to activity
intent.putExtra("buttonNumber", 1);
startActivity(intent);
}
});
ExampleActivity.java
public class ExampleActivity extends Activity {
int pressedButtonNumber;
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_add_poll);
pressedButtonNumber = getIntent().getExtras().getInt("buttonNumber");
switch(pressedButtonNumber){
case 1:
//Do Something for clicking button 1 scenario
break;
}
}
关于java - Android:不同按钮的相同 Activity ,但操作不同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41790282/