我想從Fragment
開始Activity
當我按最後一個按鈕,但我得到一個空白的佈局,而不是與Activity
關聯的佈局。如何從片段開始活動?
我叫Fragment
從MainActivity.class
這樣的:
FragmentManager mFragmentManager = getSupportFragmentManager();
FragmentTransaction fragmentTransaction = mFragmentManager.beginTransaction();
fragmentTransaction.replace(R.id.mainContent,new FragmentMain()).commit();
而且在FragmentMain
類我有一個onClick
方法類似如下:
@Override
public void onClick(View v) {
Intent intent = new Intent(getActivity(), FinalClass.class);
getActivity().startActivity(intent);
}
但結果卻是一個空白的佈局,沒有錯誤顯示在logcat上。我已經在網上搜索,類似的行爲上,我發現了一些解決方案,並沒有解決我的問題:
我不會對我的項目的任何方法addToBackStack()
因此該方案不不適合我。
getActivity().startActivity(myIntent)
是公認的答案。
他們用來從片段啓動活動的方式不會改變我使用的方式。
任何提供的解決方案的工作對我來說。
PS:我已經宣佈對Manifest.xml
文件Activity
:
<activity
android:name=".FinalClass"
android:screenOrientation="portrait"
android:label="Final Class"
android:icon="@mipmap/ic_launcher"
android:theme="@style/AppTheme.NoActionBar" />
PS2:不要懷疑問,如果你需要更多的代碼(我試圖簡化它把重點放在問題)。
我該怎麼做才能避免Activity
給我一個空白的佈局,而不是與該Activity
相關聯的佈局?
提前致謝!
確實有'FInalClass'活動的佈局有什麼看法? –
只是一個方面的說明,不知道如果做一個片段'getActivity()。startActivity()'是一個很好的做法。我建議使用你的活動將實現的接口,然後從你的片段的接口調用一個方法。然後從您的活動開始您的活動。不要認爲它與你的問題有關雖然.. – vkislicins
@BurhanuddinRashid我有以下內容:public View onCreateView(LayoutInflater inflater,ViewGroup container,Bundle savedInstanceState){ final View inflaterFinalClass = inflater.inflate(R.layout.activity_final_class , 空值);返回inflaterFinalClass;' –