我是Android新手。实际上我想在片段的帮助下创建三个列表视图。可能吗?如果可能的话请提供一些参考。在这方面的任何帮助将不胜感激。
答案 0 :(得分:0)
你的意思是你想要制作一个包含3个listview的片段?
只需编写一个YourFragment extends Fragment,其布局包含3个listviews。
我认为ListFragment在这种情况下没用,就像ListActivity一样。
答案 1 :(得分:0)
好吧,如果你想要三个ListFragments,它就是这样的。
main.xml中:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:padding="3dp">
<fragment class="com.fragtest.Fragment1"
android:id="@+id/fragment1"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1" />
<fragment class="com.fragtest.Fragment2"
android:id="@+id/fragment2"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1" />
<fragment class="com.fragtest.Fragment3"
android:id="@+id/fragment3"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1" />
</LinearLayout>
然后是每个片段的xml。
fragment1.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="vertical" >
<ListView
android:id="@id/android:list"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
android:drawSelectorOnTop="false" />
</LinearLayout>
然后最后将一些代码挂起来。您的主要活动:
public class ListFragmentExampleActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
}
}
用于填充列表的每个片段的类... Fragment1.java:
public class JobFragment extends ListFragment {
private ScheduleDBAdapter mDBHelper;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
return inflater.inflate(R.layout.fragment1, container, false);
}
@Override
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
mDBHelper = new ScheduleDBAdapter(getActivity());
mDBHelper.open();
fillData();
}
private void fillData() {
Cursor jobsCursor = mDBHelper.fetchAllJobs();
getActivity().startManagingCursor(jobsCursor);
String[] from = new String[] { ScheduleDBAdapter.JOB_NUMBER,
ScheduleDBAdapter.JOB_PART };
int[] to = new int[] { R.id.ListItem1, R.id.ListItem2 };
SimpleCursorAdapter jobs = new SimpleCursorAdapter(getActivity(),
R.layout.listlayoutdouble, jobsCursor, from, to);
setListAdapter(jobs);
}
}
希望有所帮助!