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

コンテキストをインテントに渡す必要があります。「これ」と書いたばかりで、リスナーにいるので、アクティビティのコンテキストではなくリスナーを渡します。そのため、そこに YourActivity.this を記述する必要があります。したがって、この行を置き換えます

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

これで

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

これでお役に立てば幸いです。

于 2013-01-12T11:22:38.723 に答える