android – 使用coordinatorlayout折叠全屏图像视图,并将其替换为带有标题的viewpager

前端之家收集整理的这篇文章主要介绍了android – 使用coordinatorlayout折叠全屏图像视图,并将其替换为带有标题的viewpager前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我开始玩Coordinatoralyout并且我正在尝试实现附加图像上的行为,我想要一个背景图像在全屏尺寸上和滚动时我希望一些文本视图消失,一些粘贴作为viewpager的一部分(而不是一个toolbarlayout)关于如何实现这一目标的任何指导?

enter image description here

最佳答案
您可以使用layout_behavior来处理要在滚动时消失的字符串.使用CoordinatorLayout.Behavior自定义您的视图行为

ViewBehavior.java

public class ViewBehavior extends CoordinatorLayout.Behavior

在布局xml中,将自定义视图行为设置为要处理的视图中的app:layout_behavior.

activity_main.xml中

最后,使用布局并在Activity类中创建ViewPager和Tabs.

MainActivity.java

public class MainActivity extends AppCompatActivity {

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

    ((CollapsingToolbarLayout) findViewById(R.id.collapsing_toolbar)).setTitle(" ");

    ViewPager viewPager = (ViewPager) findViewById(R.id.viewpager);
    viewPager.setAdapter(new MyPagerAdapter(getSupportFragmentManager()));

    PagerSlidingTabStrip tabsStrip = (PagerSlidingTabStrip) findViewById(R.id.tabs);
    tabsStrip.setViewPager(viewPager);
}

public class MyPagerAdapter extends FragmentPagerAdapter {
    final int PAGE_COUNT = 2;
    private String tabTitles[] = new String[] { "Tab1","Tab2" };

    public MyPagerAdapter(FragmentManager fm) {
        super(fm);
    }

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

    @Override
    public Fragment getItem(int position) {
        return TestFragment.newInstance(position + 1);
    }

    @Override
    public CharSequence getPageTitle(int position) {
        return tabTitles[position];
    }
}
}

在build.gradle中添加以下额外依赖项以及appcompat和支持库.

> com.android.support:design:23.2.1
> com.astuetz:pagerslidingtabstrip:1.0.1(对于ViewPager选项卡)

猜你在找的Android相关文章