こんにちは、私は2つのナビゲーションドロワーを作成し、私のアプリで2つの主要なactivtiesのように(記録されたユーザーのための1とログインしていないユーザーのための1)。ユーザーのログイン時にニュースを見たい場合は、それが素晴らしい作品です。新しいフラグメントを開きます。ここで、ニュースのリストが表示されます。ユーザーが特定のニュースを選択すると、詳細が開き、すばらしいことができます。しかし、問題は、ログに記録されていないユーザーのための活動でニュースの詳細を開くときです。私はそれがここにある問題を分離することができます。フラグメントの表示が1で見つかりませんでした。Nav Drawer
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
FragmentManager fm = getFragmentManager();
FragmentTransaction ft = fm.beginTransaction();
Fragment fragment = new DetailView();
Integer ID;
ID = listNovosti.get(position).getId();
Bundle bundle = new Bundle();
bundle.putInt("ID", ID);
fragment.setArguments(bundle);
ft.replace(R.id.fragmentlayout, fragment);
ft.commit();
}
問題は、この行にある:私がログインしているユーザ(fragmentprelayout)とfragmentlayout秒であるため2つのfragsレイアウト1を使用してい
ft.replace(R.id.fragmentlayout, fragment);
。
どのように調整したり、その2つのレイアウトの中から1つを選ぶことができるように、その場所の周りに魔法をかけることができますか?
あなたが正しく理解しているなら、 'int layoutId = findViewById(R.id.fragmentlayout)== null? R.id.fragmentprelayout:R.id.fragmentlayout; '。しかし、一度に1つしかロードされないのであれば、両方のレイアウトで同じIDを使用しない理由はわかりません。 –
両方のフラッグに同じレイアウトを使用したいと思っていますが、このエラーが発生しました: java.lang.RuntimeException:アクティビティを開始できませんComponentInfo {ba.lampica.dev/lampica.ba.lampica.views.activities .MainPreLogin}:java.lang.IllegalArgumentException:断片化のためのID 0x7f0d00b7(ba.lampica.dev:id/fragmentlayout)のビューが見つかりませんLoginFragment {26f5ec3e#0 id = 0x7f0d00b7} 再度id:/ –
私はあなたのセットアップでは本当に明確ではないので、上記がうまくいかない場合は、レイアウトのような詳細とアクティビティの関連コードを提供する必要があります。 –