我创建了一个类(InputControl),它扩展了我的主类(Main)的视图,并且成为了屏幕的焦点。我在主xml布局上有一个按钮,它调用control()并设置我的InputControl视图,从那里我捕获用户输入。
如何从InputControl视图类返回xml布局?
public class Main extends Activity {
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
InputControl = new InputControl(this);
}
//......SNIP!
public void control(){
setContentView(InputControl);
InputControl.requestFocus();
}
}
public class InputControl extends View implements OnTouchListener {
public InputControl(Context context) {
super(context);
setFocusable(true);
setFocusableInTouchMode(true);
this.setOnTouchListener(this);
}
public boolean onTouch(View view, MotionEvent event) {
//...I AM CAPTURING USER TOUCH EVENTS HERE
}
}
答案 0 :(得分:3)
除非您有特定的理由以这种方式执行操作,否则更好的方法是使用自己的布局文件创建第二个活动(例如InputControlActivity)并将InputControl类嵌入到该文件中。
然后您将启动第二个活动的实例(使用startActivity()) - 一旦您完成InputControlActivity,只需按下手机的BACK按钮即可关闭该活动并返回主活动。