Android 如何在我的应用程序中添加两个listfragment
我有一个应用程序,它使用下面的代码显示第一个列表。单击下面代码中的任何列表项时,如何在更多列表上显示。请帮我举一个示例代码Android 如何在我的应用程序中添加两个listfragment,android,Android,我有一个应用程序,它使用下面的代码显示第一个列表。单击下面代码中的任何列表项时,如何在更多列表上显示。请帮我举一个示例代码 public class MyListFragment1 extends ListFragment { String[] VideoSetup ={ "Properties", "Color Control", "Tint", "3D Depth",
public class MyListFragment1 extends ListFragment {
String[] VideoSetup ={
"Properties",
"Color Control",
"Tint",
"3D Depth",
"3D Format",
"Dynamic Backlight",
"Mode",
"Cache ID",
};
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
ListAdapter myListAdapter = new ArrayAdapter<String>(
getActivity(),
android.R.layout.simple_list_item_1,
VideoSetup);
setListAdapter(myListAdapter);
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
return inflater.inflate(R.layout.listfragment1, container, false);
}
@Override
public void onListItemClick(ListView l, View v, int position, long id) {
// TODO Auto-generated method stub
Toast.makeText(
getActivity(),
getListView().getItemAtPosition(position).toString(),
Toast.LENGTH_LONG).show();
Fragment2 frag = (Fragment2) getFragmentManager().findFragmentById(R.id.fragment2);
}
}
公共类MyListFragment1扩展ListFragment{
字符串[]视频设置={
“财产”,
“颜色控制”,
“色调”,
“三维深度”,
“3D格式”,
“动态背光”,
“模式”,
“缓存ID”,
};
@凌驾
创建时的公共void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
ListAdapter myListAdapter=新阵列适配器(
getActivity(),
android.R.layout.simple\u list\u item\u 1,
视频设置);
setListAdapter(myListAdapter);
}
@凌驾
创建视图上的公共视图(布局、充气机、视图组容器、,
Bundle savedInstanceState){
返回充气机。充气(R.layout.listfragment1,容器,假);
}
@凌驾
public void onListItemClick(列表视图l、视图v、整数位置、长id){
//TODO自动生成的方法存根
Toast.makeText(
getActivity(),
getListView().getItemAtPosition(position).toString(),
Toast.LENGTH_LONG).show();
Fragment2 fragment=(Fragment2)getFragmentManager().findFragmentById(R.id.Fragment2);
}
}
我真的不确定这样做。我对android非常陌生。首先,您必须编写第二个ListFragment。同样地 然后,在第一个片段的onListItemClick()方法中,您可以编写如下内容:
Fragment2 frag = (Fragment2) getFragmentManager().findFragmentById(R.id.fragment2);
activity.getFragmentManager()
.beginTransaction()
.replace(R.id.fragment_container, frag)
.addToBackStack(null)
.commit();
这是您的片段容器-/res/layout/activity_main.xml。它是空的。通过setContentView(R.layout.activity\u main)将其与MainActivity.class绑定:
之后,您必须在片段容器上添加新的第一个片段,如上所述
然后,在第一个片段的onListItemClick(…)方法中,您必须创建新的第二个片段并替换第一个片段 你可以使用ActionBarSherlock上面的代码做我想做的,现在我有一个问题,这是非常愚蠢的猜测。请也帮我做这个。我还有一个片段,里面有一个列表。默认情况下,当我启动活动时,它会显示该列表。我想在单击第一个片段中的列表项时在第二个片段中显示列表。
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity"
android:background="#000000"
android:id="@+id/fragment_container">
</RelativeLayout>