5

私は何時間もこれにいましたが、それを理解できません。デバッグすると、上記のエラーが発生します。私はこれに慣れていないので、私が見逃していることが明らかな場合は優しくしてください...

これは、最初のアクティビティからクラッシュを引き起こしたコードです。まだ「メイン」というラベルが付けられています。

//-- Menu Press --

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    getMenuInflater().inflate(R.menu.main, menu);
    return true;
}

//-- Handle item selection
@Override
public boolean onOptionsItemSelected(MenuItem item) {
    switch (item.getItemId()) {
        case R.id.menu_settings:
            Intent menu = new Intent(this, Menu.class);
            menu.putExtra("plWin", plWin);
            menu.putExtra("plLoss", plLoss);
            menu.putExtra("plDraw", plDraw);
            startActivity(menu);
            return true;
        case R.id.menu_reset:
            if (opCounter > plCounter) {
                plLoss++;
            }else if (opCounter < plCounter) {
                plWin++;
            }else {
                plDraw++;
            }
            opCounter = 0;
            plCounter = 0;
            return true;
        default:
            return false;
    }

}

現在「メニュー」という名前の 2 番目のアクティビティ:

public class Menu extends Activity {

Intent menu = getIntent();
int wins = menu.getIntExtra("plWin", 0);
int losses = menu.getIntExtra("plLoss", 0);
int draws = menu.getIntExtra("plDraw", 0);

private TextView winNum = null;
private TextView lossNum = null;
private TextView drawNum = null;

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.menu);
    setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);


    //-- Win Counter --
    LinearLayout winView = (LinearLayout) findViewById(R.id.plLeft);
    winNum = (TextView) winView.findViewById(R.id.winNum);
    winNum.setText("" + wins);

    //-- loss Counter --
    LinearLayout lossView = (LinearLayout) findViewById(R.id.plMid);
    lossNum = (TextView) lossView.findViewById(R.id.lossNum);
    lossNum.setText("" + losses);

    //-- Draw Counter --
    LinearLayout drawView = (LinearLayout) findViewById(R.id.plRight);
    drawNum = (TextView) drawView.findViewById(R.id.drawNum);
    drawNum.setText("" + draws);
}

public void onBackPressed() {
    finish();
    super.onBackPressed();
}

}

ここに私のマニフェストがあります:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.sesto.life.counter"
android:versionCode="1"
android:versionName="1.0" >

<uses-sdk
    android:minSdkVersion="9"
    android:targetSdkVersion="15" />

<application
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/AppTheme" >
    <activity
        android:name=".Main"
        android:label="@string/title_activity_main" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>

    <activity 
        android:name="com.sesto.life.counter.Menu"
        android:label="@string/title_activity_menu" >

    </activity>  

</application>

私はアイデアを探しています。よろしくお願いします

4

3 に答える 3

12

考えられる間違いは に 1 つだけあります Intent menu = new Intent(this, Menu.class); 。ではないことを確認しMenu.classてください(場所は)。logcat は、 で見つからないことを伝えました。マウス ポインターを上に移動して、このためにインポートしたクラスを確認します。Menu classAndroid Menu Viewandroid.view.Menuandroid.view.MenumanifestMenu.class

于 2012-09-01T03:10:14.733 に答える
2

変化する

<activity 
        android:name="com.sesto.life.counter.Menu"
        android:label="@string/title_activity_menu" >

</activity>  

<activity 
    android:name=".Menu"
    android:label="@string/title_activity_menu" >

</activity>  

そして、それが役立つかどうかを確認してください

于 2012-09-01T02:09:21.417 に答える