如何在 android 中创建自定义启动 activity 方法?
How do i create a custom start activity method in android?
我想创建一个方法来启动多个活动。我在每个按钮上都设置了 setOnClickListener
。我已经实现了如下所示的 onClick()
方法:
public void onClick(View view) {
switch (view.getId()) {
case R.id.firstActivityButton:
Intent i1 = new Intent(getApplicationContext(), FirstActivity.class);
startActivity(i1);
break;
case R.id.secondActivityButton:
Intent i2 = new Intent(getApplicationContext(), SecondActivity.class);
startActivity(i2);
break;
//and so on
}
}
我想在每个 case
中使用这样的方法:startSpecificActivity(FirstActivity.class)
这是我的方法:
public void startSpecificActivity(Context context) {
Intent intent = new Intent(getApplicationContext(), context.class);
startActivity(intent);
}
public void onClick(View view) {
switch (view.getId()) {
case R.id.firstActivityButton:
startSpecificActivity(FirstActivity.class);
break;
case R.id.secondActivityButton:
startSpecificActivity(SecondActivity.class);
break;
// And so on
}
}
像这样创建方法,其中 Class<?>
是通用 class 对象持有者,?
是通配符:
public void startSpecificActivity(Class<?> otherActivityClass) {
Intent intent = new Intent(getApplicationContext(), otherActivityClass);
startActivity(intent);
}
我也鼓励使用当前 Activity 的 context
或 YourActivityName.this
,而不是 getApplicationContext()
。
我想创建一个方法来启动多个活动。我在每个按钮上都设置了 setOnClickListener
。我已经实现了如下所示的 onClick()
方法:
public void onClick(View view) {
switch (view.getId()) {
case R.id.firstActivityButton:
Intent i1 = new Intent(getApplicationContext(), FirstActivity.class);
startActivity(i1);
break;
case R.id.secondActivityButton:
Intent i2 = new Intent(getApplicationContext(), SecondActivity.class);
startActivity(i2);
break;
//and so on
}
}
我想在每个 case
中使用这样的方法:startSpecificActivity(FirstActivity.class)
这是我的方法:
public void startSpecificActivity(Context context) {
Intent intent = new Intent(getApplicationContext(), context.class);
startActivity(intent);
}
public void onClick(View view) {
switch (view.getId()) {
case R.id.firstActivityButton:
startSpecificActivity(FirstActivity.class);
break;
case R.id.secondActivityButton:
startSpecificActivity(SecondActivity.class);
break;
// And so on
}
}
像这样创建方法,其中 Class<?>
是通用 class 对象持有者,?
是通配符:
public void startSpecificActivity(Class<?> otherActivityClass) {
Intent intent = new Intent(getApplicationContext(), otherActivityClass);
startActivity(intent);
}
我也鼓励使用当前 Activity 的 context
或 YourActivityName.this
,而不是 getApplicationContext()
。