0

私はこれを1時間繰り返しましたが、問題を理解できません。値がTouchEvent内にあるactivityときに、新しいものを起動しようとしています。booleantrueACTION_UP

public boolean onTouchEvent(MotionEvent event) {

            int eventaction = event.getAction();
            int X = (int)event.getX();
            int Y = (int)event.getY();
            fingerX = X;
            fingerY = Y;

            switch (eventaction ) {

            case MotionEvent.ACTION_DOWN:
                if (okayButton){
                    if (fingerX > 323 && fingerX < 423) {
                        largeOkayButton = true;
                    }
                }
                break;

            case MotionEvent.ACTION_MOVE:
                break;

            case MotionEvent.ACTION_UP:
                tutorial = true;
                if (startActivity){
                    //create an Intent variable titled openStartingPoint and pass its activity action from the Android Manifest.xml
                    Intent MainActivity = new Intent("com.example.shoottoiletpaper.MAINACTIVITY");
                    //start a new activity by passing the newly created Intent

                    startActivity(MainActivity);
                }
                break;
            }
        return true;
    }

を起動するまですべてが機能しactivity、強制的に閉じて、logcatでこれを取得します。

android.content.ActivityNotFoundException: No Activity found to handle Intent

これがの関連部分ですmanifest

        <activity
        android:name="com.example.shoottoiletpaper.MainActivity"
        android:screenOrientation="landscape"
        android:configChanges="orientation|keyboard"
        android:label="@string/app_name" >
        <intent-filter>
            <action android:name="android.intent.action.MAINACTIVITY" />
            <category android:name="android.intent.category.DEFAULT" />
        </intent-filter>
    </activity>

何か案は?

4

3 に答える 3

0

変化する

<action android:name="android.intent.action.MAINACTIVITY" />  

<action android:name="android.intent.action.MAIN" />
于 2013-03-20T02:54:01.223 に答える
0

これを変える

Intent MainActivity = new Intent("com.example.shoottoiletpaper.MAINACTIVITY");

Intent MainActivity = new Intent("android.intent.action.MAINACTIVITY");
于 2013-03-20T02:54:06.323 に答える
0

あなたの主な活動のクラス名は何ですか?MAINACTIVITYでない場合は、タイプミスがあります。

変化する

 Intent MainActivity = new Intent("com.example.shoottoiletpaper.MAINACTIVITY");

 Intent MainActivity = new Intent(this,MainActivity.class);

(またはあなたの主な活動が呼ばれるものは何でも)。Javaでは大文字と小文字が重要です。

マニフェストも見てください。(ここの例を見てください。

あなたは読むためにあなたの行を変更する必要があります

 <action android:name="android.intent.action.MAIN"/>
于 2013-03-20T03:19:13.050 に答える