android - 使用 ViewPagerIndicator 的 FragmentPagerAdapter 不工作

标签 android viewpagerindicator fragmentpageradapter

我决定使用 ViewPagerIndicator 和 TitlePageIndicator 重新制作我的应用程序的 UI,但我有以下问题:

1) 不显示每个页面的 fragment 。

2) 无法在两页之间滑动。

我像使用选项卡一样使用 ActionBarSherlock。

我没有更改 Fragmens 中的任何内容,因为当我使用选项卡时它工作正常并且我编写了以下代码:

public class CustomFragmentAdapter extends FragmentPagerAdapter {


    private final String[] TITLES = new String[] { 
            "General",
            "Companies",
            "Discounts"


    };

    public final int NUM_TITLES = TITLES.length;

    public CustomFragmentAdapter(FragmentManager fm) {      
        super(fm);

    }

    @Override
    public Fragment getItem(int position) { 

        Log.v("POSITION", "position: "+position);
        switch (position) {
            case 0:
                return new General();
            case 1:
                return new Companies();
            case 2:
                return new Discounts();
        }

        return null;
    }

    @Override
    public int getCount() {
        return NUM_TITLES;
    }

    @Override
    public CharSequence getPageTitle(int position) {
        return TITLES[position % NUM_TITLES].toUpperCase();
    }
}

mViewPager = (ViewPager)findViewById(R.id.pager);

    mViewPager.setAdapter(new CustomFragmentAdapter(getSupportFragmentManager()));

    TitlePageIndicator indicator = (TitlePageIndicator) findViewById(R.id.indicator);

    indicator.setViewPager(mViewPager);
    indicator.setCurrentItem(0);

和我的 XML

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/main"
android:layout_width="match_parent"
android:layout_height="match_parent"

>

<com.viewpagerindicator.TitlePageIndicator
    android:id="@+id/indicator"
    android:layout_height="wrap_content"
    android:layout_width="match_parent"
    />

<android.support.v4.view.ViewPager
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/pager"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
/>

正如我所见,大多数教程和示例都与我的代码非常相似,但我仍然无法使其正常工作。我几乎尝试了一切。当我把一些只有一些 TextView 的虚拟 fragment 放在那里时,它也不起作用。我也曾尝试删除 ViewPagerIndicator 并仅尝试使用 ViewPager,但它对我不起作用。

我可能遗漏了什么,但找不到。 非常感谢您的建议。

最佳答案

我从我的类似 Activity 中看到的一个区别是您没有设置寻呼机的当前项目:

mViewPager.setCurrentItem(0, false);

关于android - 使用 ViewPagerIndicator 的 FragmentPagerAdapter 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12376337/

相关文章:

android - Actionbarsherlock with Viewpagerindicator

android - 在 fragment 之间滑动时如何改变 ActionBar 颜色( Material 设计)?

java - 从第二个 Activity 启动第一个 Activity 的第二个选项卡 fragment

android - PagerTiltleStrip中如何设置选中tab的背景色

android - AdView 和 ViewPager

android - 无法更改 fragment 的容器 ID

java - GridView.setOnItemClickListener 触发整行

android - 为什么不总是使用 android :configChanges ="keyboardHidden|orientation"?

java - GPS 速度错误

android - Chrome 中 Bootstrap 4 底部的巨大空白