2017-08-17 30 views
0

私はいくつかの写真があるメニューと、新しいページを開くonClickメソッドを持っています。これは、1つを除くすべてのメニュー項目で機能します。それは残りの部分とまったく同じ方法で書かれていますが、メニュー項目をクリックすると、空白の新しいページが表示されますが、タイトルは正しく表示されますが、新しいアクティビティのメソッドonCreateは呼び出されません。android:アクティビティが開始しない

エラーメッセージもありません。

Activitysが開始されているコード、:すべての活動が、FilesActivityのための魔法のように

public void onClick(View v) { 

    Intent intent = null; 
    Context context = v.getContext(); 

    switch(position) { 
     case 0: 
      intent = new Intent(context, BooksActivity.class);      
      break; 
     case 1: 
      intent = new Intent(context, GamesActivity.class); 
      break; 
     case 2: 
      intent = new Intent(context, MusicActivity.class); 
      break; 
     case 3: 
      intent = new Intent(context, FilesActivity.class); 
      break; 
     case 4: 
      intent = new Intent(context, VideosActivity.class); 
      break; 
    } 
    context.startActivity(intent);    
} 

作品。 FilesActivity.onCreateメソッドでは、ログを出力します。

Log.d(TAG, "initialized"); 

ログは決して表示されません。

ここで何が起こっているのでしょうか?

編集:

<activity 
    android:name=".MusicActivity" 
    android:configChanges="orientation|keyboardHidden|screenSize" 
    android:label="@string/title_activity_music" 
    android:parentActivityName=".MainActivity" 
    android:theme="@style/FullscreenTheme"> 
    <meta-data 
     android:name="android.support.PARENT_ACTIVITY" 
     android:value="com.example.wilzek.hoerstift.MainActivity" /> 
</activity> 
<activity 
    android:name=".FilesActivity" 
    android:configChanges="orientation|keyboardHidden|screenSize" 
    android:label="@string/title_activity_files" 
    android:parentActivityName=".MainActivity" 
    android:theme="@style/FullscreenTheme"> 
    <meta-data 
     android:name="android.support.PARENT_ACTIVITY" 
     android:value="com.example.wilzek.hoerstift.MainActivity" /> 
</activity> 

編集: Files.ActivityのonCreate: すべての活動は、同じ方法で、マニフェストに追加されFilesActivityで

public void onCreate(@Nullable Bundle savedInstanceState, @Nullable PersistableBundle persistentState) { 
    super.onCreate(savedInstanceState, persistentState); 
    setContentView(R.layout.activity_files); 
    Log.e(TAG, "INITIALIZED"); 

    listView = (ListView)findViewById(R.id.files_list); 
    listView.setOnItemClickListener(onItemClickListener); 

    try { 
     files = Arrays.asList(USBCommunicationManager.getRootDir().listFiles()); 
     Log.e(TAG, "Root Dateien: " + files.size()); 
    } catch (Exception e) { 
     Log.e(TAG, "Root Dateien konnten nicht gefetcht werden. Yay denglish."); 
    } 

    filesAdapter = new FilesAdapter(this, files); 
    listView.setAdapter(filesAdapter); 
} 
+0

AndroidManifest.xmlにあなたのアクティビティを追加しましたか? –

+0

マニフェストとそのアクティビティコードを表示してください –

+0

FilesActivityをここに追加してください –

答えて

3

は上書き

protected void onCreate(Bundle savedInstanceState); 

の代わりに

protected void onCreate(Bundle savedInstanceState, @Nullable PersistableBundle persistentState); 
+0

ありがとうございました。 これらの2つのパラメータの説明も高く評価されます。 – murkr

+0

私は一度も使ったことがありませんが、ここにはドキュメントがあります:https://developer.android.com/reference/android/app/Activity.html#onCreate(android.os.Bundle,%20android.os.PersistableBundle) – Juan

関連する問題