基本上這是我的平板電腦橫向應用(構思): 兩個片段,左邊的片段是由resource.xml文件填充的一個listfragment(工作正常)。以編程方式將片段添加到視圖組
右段應根據用戶點擊的列表項動態更改片段和佈局。谷歌搜索到目前爲止告訴我,我需要編程添加和刪除片段到一個視圖組來做到這一點。是對的嗎?
基本問題是/是:
- 如何創建一個ViewGroup和地方(Main.java或menufragment.java)?
- 如何將動態「用戶單擊的ID 3放在列表中,以便將片段3添加到視圖組」
- 我將什麼添加到我的main.xml文件中?在那裏獲得了listfragment的片段,爲動態視圖組添加什麼?
編輯:
所以這是我的活動是什麼樣子: Main.java
public class Main extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
}
}
這是我listfragment MenuFragment.java
public class MenuFragment extends ListFragment {
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflate the layout for this fragment
return inflater.inflate(R.layout.listfragment, container, false);
}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setListAdapter(new ArrayAdapter<String>(getActivity(),
android.R.layout.simple_list_item_1,
getResources().getStringArray(R.array.listmenu)));
}
@Override
public void onListItemClick(ListView l, View v, int position, long id) {
// TODO Auto-generated method stub
super.onListItemClick(l, v, position, id);
Main activity = (Main) getActivity();
}
}
和終於我的main.xml
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<fragment
android:id="@+id/list"
android:layout_width="200dp"
android:layout_height="fill_parent"
android:layout_alignParentTop="true"
android:layout_weight="1"
class="com.mwerner.fragmentstest.MainMenu" />
<View
android:id="@+id/contentview"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_toRightOf="@+id/list" />
</RelativeLayout>
字符串數組我有在填充列表我的XML文件被稱爲「listmenu」
我是個初學者。 Plaese告訴我在哪裏需要放入你寫下的代碼?
謝謝,最大
ViewGroup只是一個容器,就像LinearLayout或RelativeLayout。它應該被添加到活動佈局文件(res/layout/activity.xml)。給你的ViewGroup一個id,然後你可以使用'findViewById'方法來引用它。 – twaddington 2012-03-01 05:22:46