更新 TabHost 中的 Tab 数量
Update Number of Tab in TabHost
我正在使用 Material 选项卡构建应用程序
我有来自服务器的列表数据,根据这些数据我将在我的片段中定义选项卡的数量。
但我不知道如何更新它们。布局不能改变。
在 onCreateView() 中:
rootView = inflater.inflate(R.layout.fragment_classroom, container, false);
tabHost = (MaterialTabHost) rootView.findViewById(R.id.tabHost);
pager = (ViewPager) rootView.findViewById(R.id.pager);
for (int i = 0; i < size; i++) {
tabHost.addTab(tabHost.newTab().setText("abcd").setTabListener(this));
}
pager.setOnPageChangeListener(new ViewPager.SimpleOnPageChangeListener() {
@Override
public void onPageSelected(int position) {
// when user do a swipe the selected tab change
tabHost.setSelectedNavigationItem(position);
}
});
getData();
return rootView;
getData():
String url = Constants.API_GET_ROOM_IN_FLOOR;
sender.start(url, new RequestSender.IRequestSenderComplete() {
@Override
public void onRequestComplete(String result) {
items = ParseUtils.parseClassInfo(result);
adapter = new ViewPagerAdapter(getChildFragmentManager(), items);
pager.setAdapter(adapter);
updateView();
}
});
我已经从服务器获取数据,现在我将使用 updateView() 函数来更新布局中的新选项卡数量。
我不知道如何在这个片段中写这个函数。
请帮我查一下
抱歉回答晚了。
为此,我们调用函数:
tabHost.notifyDataSetChanged();
它将更新选项卡的数量
我正在使用 Material 选项卡构建应用程序
我有来自服务器的列表数据,根据这些数据我将在我的片段中定义选项卡的数量。 但我不知道如何更新它们。布局不能改变。
在 onCreateView() 中:
rootView = inflater.inflate(R.layout.fragment_classroom, container, false);
tabHost = (MaterialTabHost) rootView.findViewById(R.id.tabHost);
pager = (ViewPager) rootView.findViewById(R.id.pager);
for (int i = 0; i < size; i++) {
tabHost.addTab(tabHost.newTab().setText("abcd").setTabListener(this));
}
pager.setOnPageChangeListener(new ViewPager.SimpleOnPageChangeListener() {
@Override
public void onPageSelected(int position) {
// when user do a swipe the selected tab change
tabHost.setSelectedNavigationItem(position);
}
});
getData();
return rootView;
getData():
String url = Constants.API_GET_ROOM_IN_FLOOR;
sender.start(url, new RequestSender.IRequestSenderComplete() {
@Override
public void onRequestComplete(String result) {
items = ParseUtils.parseClassInfo(result);
adapter = new ViewPagerAdapter(getChildFragmentManager(), items);
pager.setAdapter(adapter);
updateView();
}
});
我已经从服务器获取数据,现在我将使用 updateView() 函数来更新布局中的新选项卡数量。
我不知道如何在这个片段中写这个函数。
请帮我查一下
抱歉回答晚了。
为此,我们调用函数:
tabHost.notifyDataSetChanged();
它将更新选项卡的数量