同じアクティビティを使用してレイアウトを切り替えることで、アプリケーションで使用されるアクティビティの総数を減らす方法を試しています。私がやっていることは -
/* Class A is the actual activity */
public class A extends Activity{
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button but=(Button)findViewById(R.id.button1);
but.setOnClickListener(new View.OnClickListener(){
/*When the button is pressed, create an object of class B to switch layout*/
public void onClick(View arg0) {
B b=new B(A.this);
}
});
}
}
/*Classs B handles some operation*/
public class B{
Activity a;
/*Set the new layout inside the constructor or call some other function to do that*/
B(Activity act){
a=act;
a.setContentView(R.layout.newlayout);
}
それで、クラスBはレイアウトを切り替えて、何らかの操作を行います。この方法が良い方法であるかどうか、また同じことを行う他の方法があるかどうかを知りたいです。ありがとう