【问题标题】:ANDROID moving from view to another activityANDROID 从视图移动到另一个活动
【发布时间】:2012-07-25 01:18:02
【问题描述】:

(我有 MainActivity 类(扩展 Activity),我有方法 setContentView(GameView); GameView 是一个扩展 View 的类,在这个类(GameView)中我有方法:

boolean inTouchEvent(MotionEvent event){
switch(event.getAction()){
case MotionEvent.ACTION_DOWN:
//here I would like to go to another activity to class MainMenuActivity()
}
}    

提前致谢。

好的,它的工作:

public boolean onTouchEvent(MotionEvent event){ 
    switch(event.getAction()){
        case MotionEvent.ACTION_DOWN:   
        Intent intent = new Intent (contexTmp, MainActivity.class);
        contexTmp.startActivity(intent);
        ((Activity)getContext()).finish();
    }
}

【问题讨论】:

  • 严重吗?你甚至知道文档存在吗?为什么要用这个问题来堵住 SO... 一次谷歌搜索可以告诉你 100 次以上。请在此处访问文档:developer.android.com/develop/index.html

标签: android events view android-activity touch


【解决方案1】:

去另一个活动:

Intent i = new Intent(context, MainMenuActivity.class);
context.startActivity(i);

【讨论】:

  • context 应该属于 Activity 类。
【解决方案2】:

如下操作:

Intent intent = new Intent(getContext(), MainMenuActivity.class);
startActivity(intent);

【讨论】:

  • View 类没有startActivity() 方法。
  • 改成context.startActivity(intent);
【解决方案3】:
Intent intent = new Intent(presentActivity.this, MainMenuActivity.class);
startActivity(intent);

【讨论】:

    【解决方案4】:

    由于您在同一个活动中,因此可以使用 setContentView(main); 设置主菜单视图

    如果您需要从其他活动返回主菜单活动,您需要这个

    Intent intent = new Intent(getContext(), MainMenuActivity.class);
    intent.setFlags( Intent.FLAG_ACTIVITY_CLEAR_TOP);
    startActivity(intent);
    

    【讨论】:

    • View 类没有startActivity() 方法。
    • 你可以使用setContentView(main);设置主菜单视图,不要使用上面的代码..
    猜你喜欢
    • 2013-07-05
    • 2013-03-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-09-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多