viewpager实现Tab
来源:互联网 发布:open cursor for sql 编辑:程序博客网 时间:2024/05/16 18:54
1、main_activity布局代码
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent"> <include layout="@layout/top" /> <android.support.v4.view.ViewPager android:id="@+id/viewpager" android:layout_width="match_parent" android:layout_height="0dp" android:layout_weight="1" ></android.support.v4.view.ViewPager> <include layout="@layout/buttom"/></LinearLayout>2、buttom导航栏布局代码(top顶部标题和viewpager内容代码,过于简单,就不写了)
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="wrap_content" android:background="@drawable/bottom_bar" android:orientation="horizontal"> <LinearLayout android:layout_width="0dp" android:layout_height="match_parent" android:layout_weight="1" android:id="@+id/weixin" android:gravity="center" android:orientation="vertical"> <ImageButton android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="#00000000" android:clickable="false" android:id="@+id/Ib_weixin" android:src="@drawable/tab_weixin_normal" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="微信" android:textColor="#ffffff" android:textSize="12sp" /> </LinearLayout> <LinearLayout android:layout_width="0dp" android:layout_height="match_parent" android:id="@+id/friend" android:layout_weight="1" android:gravity="center" android:orientation="vertical"> <ImageButton android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="#00000000" android:clickable="false" android:id="@+id/Ib_friend" android:src="@drawable/tab_find_frd_normal" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="朋友" android:textColor="#ffffff" android:textSize="12sp" /> </LinearLayout> <LinearLayout android:layout_width="0dp" android:layout_height="match_parent" android:layout_weight="1" android:gravity="center" android:id="@+id/address" android:orientation="vertical"> <ImageButton android:id="@+id/Ib_address" android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="#00000000" android:clickable="false" android:src="@drawable/tab_address_normal" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="通讯录" android:textColor="#ffffff" android:textSize="12sp" /> </LinearLayout> <LinearLayout android:layout_width="0dp" android:layout_height="match_parent" android:layout_weight="1" android:id="@+id/setting" android:gravity="center" android:orientation="vertical"> <ImageButton android:id="@+id/Ib_setting" android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="#00000000" android:clickable="false" android:src="@drawable/tab_settings_normal" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="设置" android:textColor="#ffffff" android:textSize="12sp" /> </LinearLayout></LinearLayout>
3、mian_activity代码
public class MainActivity extends Activity implements View.OnClickListener { private LinearLayout mWeixin; private LinearLayout mFriend; private LinearLayout mAddress; private LinearLayout mSetting; private ViewPager mViewpager; private ImageButton mIb_weixin; private ImageButton mIb_friend; private ImageButton mIb_address; private ImageButton mIb_Setting; private List<View> mViews = new ArrayList<>(); private PagerAdapter mPagerAdapter; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState);// this.getActionBar().hide(); requestWindowFeature(Window.FEATURE_NO_TITLE); setContentView(R.layout.activity_main); initView(); initEvent(); } private void initView() { mWeixin = (LinearLayout) findViewById(R.id.weixin); mFriend = (LinearLayout) findViewById(R.id.friend); mSetting = (LinearLayout) findViewById(R.id.setting); mAddress = (LinearLayout) findViewById(R.id.address); mViewpager = (ViewPager) findViewById(R.id.viewpager); mIb_weixin = (ImageButton) findViewById(R.id.Ib_weixin); mIb_friend = (ImageButton) findViewById(R.id.Ib_friend); mIb_address = (ImageButton) findViewById(R.id.Ib_address); mIb_Setting = (ImageButton) findViewById(R.id.Ib_setting); LayoutInflater mInflater = LayoutInflater.from(this); View weixin_content = mInflater.inflate(R.layout.tab01, null); View friend_content = mInflater.inflate(R.layout.tab02, null); View address_content = mInflater.inflate(R.layout.tab03, null); View setting_content = mInflater.inflate(R.layout.tab04, null); mViews.add(weixin_content); mViews.add(friend_content); mViews.add(address_content); mViews.add(setting_content); mPagerAdapter = new PagerAdapter() { @Override public Object instantiateItem(ViewGroup container, int position) { View view = mViews.get(position); container.addView(view); return view; } @Override public void destroyItem(ViewGroup container, int position, Object object) { container.removeView(mViews.get(position)); } @Override public int getCount() { return mViews.size(); } @Override public boolean isViewFromObject(View view, Object object) { return view == object; } }; mViewpager.setAdapter(mPagerAdapter); } private void initEvent() { mWeixin.setOnClickListener(this); mFriend.setOnClickListener(this); mAddress.setOnClickListener(this); mSetting.setOnClickListener(this); mViewpager.setOnPageChangeListener(new ViewPager.OnPageChangeListener() { @Override public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) { } @Override public void onPageSelected ( int position){ int currentItem = mViewpager.getCurrentItem(); Reset_ButtomUI(); switch (currentItem) { case 0: mIb_weixin.setImageResource(R.drawable.tab_weixin_pressed); break; case 1: mIb_friend.setImageResource(R.drawable.tab_find_frd_pressed); break; case 2: mIb_address.setImageResource(R.drawable.tab_address_pressed); break; case 3: mIb_Setting.setImageResource(R.drawable.tab_settings_pressed); break; } } @Override public void onPageScrollStateChanged ( int state){ } }); } @Override public void onClick (View v){ Reset_ButtomUI(); switch (v.getId()) { case R.id.weixin: mViewpager.setCurrentItem(0); mIb_weixin.setImageResource(R.drawable.tab_weixin_pressed); break; case R.id.friend: mViewpager.setCurrentItem(1); mIb_friend.setImageResource(R.drawable.tab_find_frd_pressed); break; case R.id.address: mViewpager.setCurrentItem(2); mIb_weixin.setImageResource(R.drawable.tab_find_frd_pressed); break; case R.id.setting: mViewpager.setCurrentItem(3); mIb_weixin.setImageResource(R.drawable.tab_settings_pressed); break; } } //将按钮图片设置为默认颜色 private void Reset_ButtomUI() { mIb_weixin.setImageResource(R.drawable.tab_weixin_normal); mIb_address.setImageResource(R.drawable.tab_address_normal); mIb_friend.setImageResource(R.drawable.tab_find_frd_normal); mIb_Setting.setImageResource(R.drawable.tab_settings_normal); }}
0 0
- Tab+ViewPager的实现
- ViewPager实现Tab布局
- viewpager实现Tab
- ViewPager实现tab
- ViewPager实现Tab
- ViewPager实现Tab
- actionBar + viewPager实现活动tab
- 【Android】ViewPager实现Tab布局
- 使用Viewpager实现Tab导航
- Android利用ViewPager实现Tab
- ViewPager与FragmentPagerAdapter实现Tab
- ViewPagerIndicator与ViewPager实现Tab
- Android ActionBar+ViewPager 实现左右滑动Tab
- Android ActionBar+ViewPager 实现左右滑动Tab
- FragmentPagerAdapter+ViewPager实现Tab切换效果
- ViewPager+Fragment实现Tab主界面
- viewpager+FragmentAdapter实现App主界面Tab
- ViewPager实现简单Tab切换效果
- 初始化的init
- iPad如何使用UIPopoverController
- 标题1
- C++之new、delete 与malloc、free
- goleveldb源码分析-key的存储和构成
- viewpager实现Tab
- 279. Perfect Squares
- raspberry 3 B安装 berryboot 遇到的问题
- 我的JAVA笔记
- oracle数据备份与还原
- Android调试获取Log
- Android中如何实现文件下载
- Java反射概念思想
- 【Spring实战】—— 2 构造注入