1
我正在嘗試開發一個使用fragment的Android應用程序,並試圖使用Butterknife綁定視圖並使用@OnClick註釋時偶然發現一個問題。ButterKnife使用不同的佈局綁定片段
在我的片段中,根據用戶在菜單中的選擇,膨脹不同的佈局。讓我們說用戶選擇設置,然後充氣我的設置佈局,其中保存註銷按鈕。如果用戶在菜單中選擇同步,則充氣我的同步視圖,其中保持按鈕以開始同步。
我onCreateView看起來像下面的代碼:那麼
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View rootView = null;
if(settings)
{
rootView = inflater.inflate(R.layout.settings_view, container, false);
} else {
rootView = inflater.inflate(R.layout.sync_view, container, false);
}
return rootView;
}
我創造了我@Onclick方法註銷按鈕
@OnClick(R.id.btnSettingsLogout)
public void logout() {
Toast.makeText(getActivity(), "Button was pressed!", Toast.LENGTH_SHORT).show();
}
,並添加ButterKnife.bind(this, rootView);
到年底我的onCreateView方法確保我返回rootView。
的問題是,現在當我吹我的設置中查看一切正常,我用烤麪包的消息映入眼簾時,我按我的註銷按鈕,但是當我誇大,因爲下列異常的我同步查看應用程序崩潰:
java.lang.RuntimeException: Unable to bind views for si.vitez.testapp.DetailFragment
是否可以注入兩個視圖,所以應用程序不會崩潰沒有mater這兩個視圖中哪一個會膨脹?
謝謝,作品像一個魅力。 –