【发布时间】:2015-03-25 12:27:30
【问题描述】:
我有一个 FragmentViewPager,它有一个数据集,其中包含可变数量的条目。用户可以删除该数据集的条目,因此数据集可以为空(其中包含 0 个条目)。
当数据集为空时,ViewPager 显示一个空片段,但我想要显示一个带有 textView 的片段,显示“没有条目,请添加一个...”,这可能吗?我不知道该怎么做。
第一张是我现在得到的,第二张是我想要达到的。
这是我的 FragmentViewPager 的代码:
private class ConfirmGamePagerAdapter extends FragmentStatePagerAdapter {
public ConfirmGamePagerAdapter(FragmentManager fm) {
super(fm);
}
@Override
public android.support.v4.app.Fragment getItem(int position) {
return ConfirmGameFragment.newInstance(games.get(position));
}
@Override
public int getCount() {
return games.size();
}
@Override
public int getItemPosition(Object object) {
return POSITION_NONE;
}
}
编辑:包含 ViewPager 的布局:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/main_linearlayout"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_height="?attr/actionBarSize"
android:layout_width="match_parent"
android:background="#000000">
</android.support.v7.widget.Toolbar>
<android.support.v4.widget.DrawerLayout
android:id="@+id/drawer_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#3F3F3F">
<martin.hogge.be.lolmatchup.utils.NonSwipeableViewPager
android:id="@+id/pager"
android:layout_width="match_parent"
android:layout_height="match_parent" />
<!-- The navigation drawer -->
<ListView android:id="@+id/list_drawer"
android:layout_width="250dp"
android:layout_height="match_parent"
android:layout_gravity="start"
android:choiceMode="singleChoice"
android:divider="@android:color/transparent"
android:dividerHeight="0dp"
android:background="#1a1c25"/>
</android.support.v4.widget.DrawerLayout>
编辑:我的自定义 ViewPager
public class NonSwipeableViewPager extends ViewPager {
public NonSwipeableViewPager(Context context) {
super(context);
}
public NonSwipeableViewPager(Context context, AttributeSet attrs) {
super(context, attrs);
}
@Override
public boolean onInterceptTouchEvent(MotionEvent event) {
// Never allow swiping to switch between pages
return false;
}
@Override
public boolean onTouchEvent(MotionEvent event) {
// Never allow swiping to switch between pages
return false;
}
}
提前感谢您的回答。
【问题讨论】:
-
嗨,你能告诉我你声明视图寻呼机中的布局文件吗?
-
还有一点是 ConfirmGamePagerAdapter 使用游戏数据集是正确的!如果您的游戏数据集列表为空,您希望显示自定义的空消息,例如“EMPTY DATASET Please add entry”。
-
@BhavdipPathar 我将其添加到布局中。是的,就是这样,我想显示一条自定义的空消息。
-
"martin.hogge.be.lolmatchup.utils.NonSwipeableViewPager" 这是您的自定义 FragmentViewPager 正确!
-
我添加了自定义 viewPager,但认为这与我的问题无关。
标签: android android-fragments android-viewpager dataset