嗨,我有A RecycleView
Adapter
和A按鈕。我想要那個按鈕來啓動一個片段。我可以開始一個活動,但不是一個片段。我已經試過這Onclick
方法我Button
從RecycleView適配器啓動片段Onclick
@Override
public void onClick(View v) {
Bundle bundle = new Bundle();
bundle.putParcelable("event", events.get(getLayoutPosition()));
Fragment fragment = new EditEventDetailFragment();
fragment.setArguments(bundle);
fragment.getFragmentManager().beginTransaction().replace(R.id.contentMainDrawer,fragment).commit();
}
但有錯誤引用空對象(contentMainDrawer
)是我的主要活動content_layout。
任何幫助是非常感謝。該片段的主機回收的觀點是從Mainactivity調用下面的代碼
呃,你不應該使用剛剛創建的Fragment中的FragmentManager。用getFragmentManager()(或getSupportFragmentManager()根據你正在使用什麼類型的片段替換這行fragment.getFragmentManager() – scana
謝謝你的幫助,但代碼在RecycleView適配器內(不是另一個活動或片段) –
,如果你真的需要這樣做,那麼你可以這樣做:((Activity)v.getContext).getFragmentManager()。但這不是一個好方法。你可以將onClick的處理移動到父類。看看這篇文章:http://stackoverflow.com/a/24933117/1139527 – scana