您的位置:首页 > 其它

对viewpager与自定义组件bottombar结合的深入理解

2015-05-21 07:46 519 查看

对ViewPager与自定义组件BottomBar结合的深入理解

思路

ViewPager是Fragment的容器,使用Adapter,利用getItem方法判断显示那个Fragment

使用OnPagerListener绑定监听器,当ViewPager翻页时对BottomBar进行操作

在BottomBar中定义监听器,在Activity中进行回调,当点击按钮时对ViewPager进行操作

ViewPage与BottomBar中的两个Listener与一个Adapter

ViewPager.OnPageChangeListener

BottomBar.OnItemChangedListener

FragmentPagerAdapter

BottomBar中的enable, select, press, normal属性

利用enable与selector,简化原先代码

enable属性使BottomBar点击后不可触

selector自带属性使ImageView点击后background变化

private void setViewSelected(View view){
view.setPressed(true);
view.setEnabled(false);
}


直接将所有的view进行状态还原,简化代码

private void setAllNormal() {
mIvDate.setPressed(false);
mIvComment.setPressed(false);
mIvPersonal.setPressed(false);

mIvDate.setEnabled(true);
mIvComment.setEnabled(true);
mIvPersonal.setEnabled(true);
}


<selector xmlns:android="http://schemas.android.com/apk/res/android">

<item android:drawable="@drawable/activity_frame_date_list_pressed_temp" android:state_pressed="true"/>
<item android:drawable="@drawable/activity_frame_date_list_pressed_temp" android:state_enabled="false"/>
<item android:drawable="@drawable/activity_frame_date_list_normal_temp" />

</selector>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: