如何将布局添加到选项卡片段?
How to add layouts to tab fragments?
我正在尝试创建一个 Android up,它具有使用 ViewPager 实现的 Tab 布局。
我不明白我必须在哪里处理任何选项卡的布局。
我知道 PageFragment
class 中的函数 onCreateView()
可以做到这一点,我已经做到了:
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fragment_page, container, false);
switch(mPage)
{
case 1:
ScheduleList(view);
return view;
case 2:
// Do something.
return view;
case 3:
// Do something.
return view;
}
return view;
}
public void ScheduleList(View v) {
ItemsLst = (ListView) v.findViewById(R.id.listview);
ArrayAdapter<String> adapter = new ArrayAdapter<String>(getActivity(), android.R.layout.simple_list_item_1, Items);
ItemsLst.setAdapter(adapter);
}
这只是在第一个选项卡中显示 ListView
。此操作在 onCreateView()
方法内的 switch
中处理。
这是 ListView
的 XML 布局:
<?xml version="1.0" encoding="utf-8"?>
<ListView
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/listview"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
问题是我只能在 XML 文件中包含 ListView
,所以我无法在显示其他 UI 的开关中管理其他 case:
元素。
例如,第一个选项卡显示 ListView
,我想在第二个选项卡中显示一些文本,在第三个选项卡中显示其他一些文本。
我该怎么做?
提前谢谢你,希望我自己解释一下。
看来您已经处理了布局文件:/,您应该为每个片段提供一个布局文件。
View view = inflater.inflate(R.layout.fragment_page, container, false);
上面的代码将片段布局设置为 res/layout/fragment_page。xml
如果您仍然有点困惑,我建议您遵循本教程 :D - http://www.exoguru.com/android/material-design/navigation/android-sliding-tabs-with-material-design.html
我正在尝试创建一个 Android up,它具有使用 ViewPager 实现的 Tab 布局。
我不明白我必须在哪里处理任何选项卡的布局。
我知道 PageFragment
class 中的函数 onCreateView()
可以做到这一点,我已经做到了:
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fragment_page, container, false);
switch(mPage)
{
case 1:
ScheduleList(view);
return view;
case 2:
// Do something.
return view;
case 3:
// Do something.
return view;
}
return view;
}
public void ScheduleList(View v) {
ItemsLst = (ListView) v.findViewById(R.id.listview);
ArrayAdapter<String> adapter = new ArrayAdapter<String>(getActivity(), android.R.layout.simple_list_item_1, Items);
ItemsLst.setAdapter(adapter);
}
这只是在第一个选项卡中显示 ListView
。此操作在 onCreateView()
方法内的 switch
中处理。
这是 ListView
的 XML 布局:
<?xml version="1.0" encoding="utf-8"?>
<ListView
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/listview"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
问题是我只能在 XML 文件中包含 ListView
,所以我无法在显示其他 UI 的开关中管理其他 case:
元素。
例如,第一个选项卡显示 ListView
,我想在第二个选项卡中显示一些文本,在第三个选项卡中显示其他一些文本。
我该怎么做?
提前谢谢你,希望我自己解释一下。
看来您已经处理了布局文件:/,您应该为每个片段提供一个布局文件。
View view = inflater.inflate(R.layout.fragment_page, container, false);
上面的代码将片段布局设置为 res/layout/fragment_page。xml
如果您仍然有点困惑,我建议您遵循本教程 :D - http://www.exoguru.com/android/material-design/navigation/android-sliding-tabs-with-material-design.html