显示特定页面时,ViewPager隐藏按钮

时间:2013-11-30 23:15:00

标签: android button android-viewpager hide viewpagerindicator

嘿我试图在显示特定页面时隐藏布局中的按钮。我使用了以下代码,但它似乎并不适合我。任何帮助表示赞赏:)

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.app_intro);

    mAdapter = new FragmentAdapter(getSupportFragmentManager());

    mPager = (ViewPager) findViewById(R.id.pager);
    final Button next = (Button) findViewById(R.id.intro_next);
    final Button skip = (Button) findViewById(R.id.intro_skip);

    mPager.setAdapter(mAdapter);

    mPager.setOnPageChangeListener(new OnPageChangeListener() {
        public void onPageScrollStateChanged(int state) {}
        public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {}
        public void onPageSelected(int position) {
            next.setVisibility(View.GONE);
        }
    });

    next.setOnClickListener(new OnClickListener() {
        public void onClick(View v) {
            mPager.setCurrentItem(mPager.getCurrentItem() + 1);
        }
    });

    skip.setOnClickListener(new OnClickListener() {
        public void onClick(View v) {
            mPager.setCurrentItem(5);
        }
    });

    UnderlinePageIndicator indicator = (UnderlinePageIndicator) findViewById(R.id.indicator);
    mIndicator = indicator;
    indicator.setViewPager(mPager);
    indicator.setBackgroundColor(0xFFCCCCCC);
    indicator.setFades(false);
}

2 个答案:

答案 0 :(得分:1)

谢谢大家试图帮助我。看起来我找到了自己的答案。对于未来的读者,当ViewPager与ViewPagerIndicator一起使用时,总是将OnPageChangeListener设置为指标而不是viewpager因为某些原因它不会那样工作。

 indicator.setOnPageChangeListener`

而不是:

 mPager.setOnPageChangeListener

答案 1 :(得分:0)

我希望我能把这个评论作为评论,但是你可以更加具体地说明这是不行的吗?选择任何页面时,该按钮是否隐藏?如果这不是你想要的东西,你需要像:

private final int page=3;

public void onPageSelected(int position){
    if(position == page){
        next.setVisibility(View.Gone);
    }