【Android(安卓)开发教程】ListFragment
16lz
2021-01-24
本章节翻译自《Beginning-Android-4-Application-Development》,如有翻译不当的地方,敬请指出。
原书购买地址http://www.amazon.com/Beginning-Android-4-Application-Development/dp/1118199545/ListFramgent就是一个包含ListView的Fragment,它可以通过数据源(数组或游标)显示一系列的信息。ListFragment是非常有用处的,就像RSS,可能左边显示一个列表,右边显示被选中的列表所对应的内容。
可以通过继承ListFragment创建一个ListFragment对象。下面将展示如何使用ListFragment。
1. 创建一个工程:ListFragmentExample。
2. main.xml中的代码。
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="horizontal" ><fragment android:name="net.manoel.ListFragmentExample.Fragment1" android:id="@+id/fragment1" android:layout_weight="0.5" android:layout_width="0dp" android:layout_height="200dp" /><fragment android:name="net.manoel.ListFragmentExample.Fragment1" android:id="@+id/fragment2" android:layout_weight="0.5" android:layout_width="0dp" android:layout_height="300dp" /></LinearLayout>3、在re/layout下面,新建一个文件:fragment1.xml。
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent"> <ListView android:id="@id/android:list" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_weight="1" android:drawSelectorOnTop="false"/> </LinearLayout>4、在包路径下面新建一个类:Fragment1.java。
public class Fragment1 extends ListFragment { String[] presidents = { "Dwight D. Eisenhower", "John F. Kennedy", "Lyndon B. Johnson", "Richard Nixon", "Gerald Ford", "Jimmy Carter", "Ronald Reagan", "George H. W. Bush", "Bill Clinton", "George W. Bush", "Barack Obama" }; @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { return inflater.inflate(R.layout.fragment1, container, false); } @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setListAdapter(new ArrayAdapter<String>(getActivity(), android.R.layout.simple_list_item_1, presidents)); } public void onListItemClick(ListView parent, View v, int position, long id) { Toast.makeText(getActivity(), "You have selected " + presidents[position], Toast.LENGTH_SHORT).show(); } }5、按F11在模拟器上调试。会看见有两个信息列表。
6、随便点击一行,就会有一个消息弹出。
由于在main.xml中分别设置了两个ListFragment的android:layout_height属性,所以这两个列表的高度不一样。
更多相关文章
- Android(安卓)音乐播放器 完整案例分析
- Android(安卓)列表按照时间排序
- adb 获取平台号
- Android开发之获取常用android设备参数信息
- Android(安卓)之Notification 用法
- android上类似iphone上的开关按钮
- Android(安卓)ListView控件使用
- MobSF安装使用及过程中遇到的错误
- 定制自己的 Android(安卓)Dialog 信息提示对话框