1

我需要以下帮助:
当我触摸我的 mainActivity 时,它应该处理 onTouch 事件并启动新的活动,这是一个对话框活动。我做不到。任何人都可以提出任何建议吗?

我补充说android:theme="@android:style/Theme.Dialog"
如果我设计简单的对话框活动,那么它工作正常,但如果我试图在触摸事件上打开它,那么它就不起作用。

public boolean onTouch(View v, MotionEvent event) {
    int action = event.getAction();
    if(action == MotionEvent.ACTION_DOWN) {         
        Intent loginIntent = new Intent(this, Login.class);
        startActivity(loginIntent);
        return true;
    }
    return true;
}
4

1 回答 1

2

你必须将上下文传递给你的意图。你刚刚写了“this”。你在监听器中,所以它传递监听器而不是你的活动上下文。所以你需要在那里写 YourActivity.this。所以替换这一行

 Intent loginIntent = new Intent(this, Login.class);

有了这个

 Intent loginIntent = new Intent(YourActivity.this, Login.class);

你完成了。希望这会有所帮助。

于 2013-01-12T11:22:38.723 回答