這裏有一個一步一步地指導了基本場景:
1)創建一個新的fragment.java文件,並使用片段的超級簡單實現。
package com.a;
import android.os.Bundle;
import android.support.v4.app.ListFragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ListView;
public class MenuFragment extends ListFragment
{
public static final String TAG = "MenuFragment";
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
v = inflater.inflate(R.layout.list, null);
return v;
}
@Override
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
//
// insert code here to setup and call setListAdapter()
//
}
@Override
public void onListItemClick(ListView lv, View v, int position, long id)
{
}
}
2)在listactivity代碼查找您的setContentView,使用該佈局作爲參數傳遞給充氣()onCreateView下調用()
setContentView(R.layout.main);
到
View v = inflater.inflate(R.layout.main, null);
3 )將您的代碼的其餘部分移到您的listactivity onCreate()到listfragmentt OnCreateView()。你可能有一些代碼設置了控件,如下面:
text = (EditText) this.findViewById(R.id.text);
它將成爲這樣的:
text = (EditText) v.findViewById(R.id.text);
注意,v是視圖,從充氣調用返回。
4)如果你的代碼引用了「this」,你會得到一個錯誤。將其替換爲「getActivity()」。
5)檢查你已經離開的代碼,並找到正確的位置將它們放入新文件中。希望以上內容涵蓋了基礎知識。
我讀過以下內容:http://developer.android.com/design/patterns/multi-pane-layouts.html。但不能設法改變我有什麼這樣的 – Bami