期間我做過好幾個片段,但他們都延長現有的一些片段,現在是一個非常/骯髒的測試在那裏我只是設置列表片段和其適配器,但我想擺脫這正在發生的煩惱,並想知道什麼是最好的方式。手柄片段旋轉
這裏是我的我的FragmentActivity的的onCreate:
@Override
protected void onCreate(Bundle savedInstances) {
super.onCreate(savedInstances);
mListFrag = new ListFragment();
getSupportFragmentManager().beginTransaction().add(android.R.id.content, mListFrag).commit();
getSupportLoaderManager().initLoader(13, null, this).forceLoad();
}
簡單的東西,實例化一個新ListFragment,將其添加爲我活動的主要框架,並開始我的光標裝載機。
光標裝載機,當它這樣做:
@Override
public void onLoadFinished(Loader<Cursor> loader, Cursor cursor) {
if (mAdapter == null) {
mAdapter = getCallLogCursorAdapter(cursor);
mListFrag.setListAdapter(mAdapter);
} else {
Cursor oldCursor = mAdapter.swapCursor(cursor);
if (oldCursor != null)
oldCursor.close();
}
}
再次,簡單的東西,如果有必要創建一個適配器,如果不是我只是換了CURSO。
所有這一切工作正常,在第一次運行,但是當我旋轉設備,我得到了旋轉列表,以及對我的看法中間的進度條。看起來好像有兩個片段在另一個之上。我試着讓mListFrag.setRetainInstance(true);
它不會顯示進度條,但是仍然有兩個片段在另一個之上,一個接收觸摸滾動瀏覽列表,另一個保持靜態。
我沒有覆蓋任何其他活動onSomething()回調。
我沒有打擾做太多複雜的方式,因爲我正在測試的應用程序中的數據端,這只是以快速查看是否數據庫/裝載機/內容提供商都在正常工作。 UI甚至沒有。
任何想法??
編輯:
我已經看到了不同的問題,以使用替換而不是增加對片段和它種工作,但不是真的。它解決了片段本身的所有問題,但是當我點擊回到前一個活動時,猜測?不確定的進度條就在與這些列表片段無關的活動的中間。
想法?也許我應該將這個片段粘貼到佈局xml中,但是因爲這是測試,我正在避免爲它們創建資源。
我真的想在不擴展的情況下使用ListFragment。而我沒有看到連接。問題不在於適配器加載與否。問題是片段停留在android.R.id之上。內容事件在您離開持有它的活動之後。 – Budius