Android两个:viewpage的联动效果的实现

  


  

  

以前做的项目,导航栏基本上是在顶部或者是在底部,但是最近开发的一款应用,刚开始拿到设计图也是很懵逼的,导航栏居然是在中间,什么他妈的!设计图如下:
  

  

 Android两个:viewpage的联动效果的实现

  

导航栏在中间就会涉及到两个:viewpage之间的联动,:viewpage的高度适应等问题,现在来纪录一下是怎么解决问题的吗?希望给有同样需求的提供一定的帮助。

  


  

  

系统自动:viewpage不能设置wrap_content;
  

  

自定义:viewpage,注意高度的设置否则底部空白的问题
  

  

网上也会有很多相关的教程,我选择了其中一个。具体代码如下:
  

        公开课WrapContentHeightViewPager延伸:viewpage {   私人int电流;   私人int高度=0;   私人布尔scrollble=true;      公共WrapContentHeightViewPager(上下文语境){   超级(上下文);   }      公共WrapContentHeightViewPager(上下文语境,AttributeSet attrs) {   超级(上下文,attrs);   }      @Override   保护空白>   公共类BaseLinkPageChangeListener实现:viewpage。OnPageChangeListener {      私人:viewpage linkViewPager;   私人:viewpage selfViewPager;      私人int pos;      公共BaseLinkPageChangeListener: viewpage selfViewPager,: viewpage linkViewPager) {   这一点。linkViewPager=linkViewPager;   这一点。selfViewPager=selfViewPager;   }      @Override   公共空间>   & lt; & # 63; xml version=" 1.0 " encoding=" utf - 8 " & # 63;比;   & lt; android.support.v4.widget。NestedScrollView xmlns: android=" http://schemas.android.com/apk/res/android "   xmlns:应用=" http://schemas.android.com/apk/res-auto "   android: layout_width=" match_parent "   android: layout_height=癿atch_parent”比;      LinearLayout & lt;   android: layout_width=" match_parent "   android: layout_height=" match_parent "   面向android:=按怪薄北?      & lt; cn.yznu.gdmapoperate.ui.widget.WrapContentHeightViewPager   android: id=癅 + id/body_vp”   android: layout_width=" match_parent "   android: layout_height=" wrap_content "/比;      & lt; com.flyco.tablayout.SlidingTabLayout   android: id=癅 + id/tabLayout”   android: layout_width=" match_parent "   android: layout_height=" 40 dp "   android: layout_centerHorizontal=" true "   android: layout_gravity=" center_horizontal "   android:背景=" @color/colorPrimaryDark”   android: paddingBottom=" 10 dp”   应用:tl_indicator_color=" # 000 "   应用:tl_indicator_margin_top=" 10 dp”   应用:tl_indicator_width_equal_title=" true "   应用:tl_tab_space_equal=" true "   应用:tl_textSelectColor=" # f00”   应用:tl_textUnselectColor=" # fff”   应用:tl_textsize=" 17 sp”/比;      & lt; cn.yznu.gdmapoperate.ui.widget.WrapContentHeightViewPager   android: id=癅 + id/header_vp”   android: layout_width=" match_parent "   android: layout_height=" wrap_content "/比;   & lt;/LinearLayout>   & lt;/android.support.v4.widget.NestedScrollView>      之前      

活动中的配置

        bodyVp。addOnPageChangeListener(新BaseLinkPageChangeListener (bodyVp headerVp) {   @Override   公共空间alt=" Android两个:viewpage的联动效果的实现“>
  

  

  

一顿乱写,个人观点仅供参考,如有不对的地方,请直接直出
  

  

源码传送门
  

  

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

Android两个:viewpage的联动效果的实现