-1

私のアンドロイドアプリのオプションメニューからアクティビティを開始するのに苦労しています。Androidマニフェストで複数のアクティビティを宣言する

問題のオプションはヘルプページです。私はこのために使用するコード(スイッチケース)は以下の通りです、ヘルプオプションが下部にある:

@Override 
// Respond to item selected on OPTIONS MENU 
public boolean onOptionsItemSelected(MenuItem item) { 
    // Handle item selection 
    switch (item.getItemId()) { 
    //put data in Intent 
     case R.id.settings: 
      Toast.makeText(this, "Settings chosen", Toast.LENGTH_SHORT).show(); 
      return true; 
    case R.id.easy: 
     Toast.makeText(this, "Easy chosen", Toast.LENGTH_SHORT).show(); 
     return true; 
    case R.id.medium: 
     Toast.makeText(this, "Medium chosen", Toast.LENGTH_SHORT).show(); 
     return true; 
    case R.id.hard: 
     Toast.makeText(this, "Hard chosen", Toast.LENGTH_SHORT).show(); 
     return true; 
    case R.id.scores: 
     Toast.makeText(this, "High Scores chosen", Toast.LENGTH_SHORT).show(); 
     return true; 
    case R.id.help: 
     Intent intent = new Intent(this, HelpActivity.class); 
     startActivity(intent); 
     return true; 
    default: 
     return super.onOptionsItemSelected(item); 
    } 
} 

だけのアプリ、私はそれがマニフェストに正しく設定されていると思いますが、私はヘルプオプションをクリックすると、クラッシュします。私のマニフェストは以下の通りです:

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
package="cct.mad.lab" 
android:versionCode="1" 
android:versionName="1.0" > 

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

<application 
    android:allowBackup="true" 
    android:icon="@drawable/ic_launcher" 
    android:label="@string/app_name" 
    android:theme="@style/AppTheme" > 
    <activity 
     android:name="cct.mad.lab.MainMenu" 
     android:label="@string/app_name" > 
     <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 

      <category android:name="android.intent.category.LAUNCHER" /> 
     </intent-filter> 
    </activity> 
    <activity 
     android:name=".GameActivity" 
     android:label="@string/app_name" > 
    </activity> 
    <activity 
     android:name=".HelpActivity" 
     android:label="@string/app_name" > 
    </activity> 

私は他の人には自明であるが、私はちょうど今それを見ることができない何か間違ったことをやったと推測するつもりです。任意のヘルプ

EDITため

ありがとう:私はそこに右ではない何かかもしれないと思うように私は私のHelpActivityクラスを追加しています。私はこの時、相対初心者午前:

public class HelpActivity extends Activity { 

public void init() { 

    Intent helpScreen = new Intent(HelpActivity.this, MainMenu.class); 

    startActivity(helpScreen); 

} 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.help_page); 
    init(); 
} 

InputStream iFile = getResources().openRawResource(R.raw.gamehelp); 

private String inputStreamToString(InputStream iFile) { 
    TextView helpText = (TextView) findViewById(R.id.tvHelpText); 
    String strFile = inputStreamToString(iFile); 
    helpText.setText(strFile); 
    return strFile; 
} 
} 
+0

logcatにはどのようなエラーがありますか? – Stephen

+0

これまで見たことはありません –

+0

ボタンをクリックするだけでアプリがクラッシュするので、どのようなエラーも表示されません。 –

答えて

0

私は、問題はここにあるかもしれないと思う:

Intent helpScreen = new Intent(HelpActivity.this, MainMenu.class); 
startActivity(helpScreen); 

はそれはと思われ

init(); 

のonCreateメソッドでは、この行をコメントアウトしてみてくださいhelpActivityを起動するとすぐに別のアクティビティを開始しようとしています

+0

うまく動作しません。どこかでHelpActivityクラスの 'setOnClickListener'が必要ですか? –

+0

私は勘違いして、ちょうど私がInputStream iFileのビットをコメントアウトしようとしていると思っていました。問題はそこにあります。何が問題なのかはっきりしないが、もう一度見てみよう。あなたの時間を無駄にして申し訳ありません –

0

私の問題は試行中でした生のリソースファイル(.txt)をレイアウトに追加します。私がこれをコメントアウトしたとき、それは活動の罰金を開いた。それは別の問題です。

関連する問題