在早期版本中,想要做好看的tab就需要自己实现,或者在tabhost上面作改动。现在android已经更新到5.1了,对于这些tab经提供了非常不错的控件。不需要自己去实现,当然了,要使用还是得学习的。下面是一个非常简单的使用例子。
效果图如下:
java代码也非常简单
import java.util.ArrayList; import java.util.List; import android.annotation.SuppressLint; import android.os.Bundle; import android.os.Parcelable; import android.support.v4.view.PagerAdapter; import android.support.v4.view.PagerTabStrip; import android.support.v4.view.ViewPager; import android.view.LayoutInflater; import android.view.View; import com.fenjin.app.humiture.BaseActivity; public class BigDataActivity extends BaseActivity { private ViewPager mPager;// 页卡内容 private ListlistViews; // Tab页面列表 @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_big_data); InitViewPager(); } /** * 初始化ViewPager */ @SuppressLint({ "InflateParams", "SetJavaScriptEnabled" }) private void InitViewPager() { mPager = (ViewPager) findViewById(R.id.vPager); listViews = new ArrayList (); LayoutInflater mInflater = getLayoutInflater(); View tab_one = mInflater.inflate(R.layout.tab_one, null); View tab_two = mInflater.inflate(R.layout.tab_two, null); listViews.add(tab_one); listViews.add(tab_two); mPager.setAdapter(new MyPagerAdapter(listViews)); mPager.setCurrentItem(0); PagerTabStrip pagerTabStrip = (PagerTabStrip) findViewById(R.id.tabstrip); pagerTabStrip.setTabIndicatorColorResource(R.color.green); } @Override public void onClick(View view) { // TODO Auto-generated method stub super.onClick(view); int id = view.getId(); switch (id) { case R.id.back: finish(); break; } } /** * ViewPager适配器 */ public class MyPagerAdapter extends PagerAdapter { public List mListViews; String[] titles = { "工作统计", "累计统计" }; public MyPagerAdapter(List mListViews) { this.mListViews = mListViews; } @Override public CharSequence getPageTitle(int position) { // TODO Auto-generated method stub return titles[position]; } @Override public void destroyItem(View arg0, int arg1, Object arg2) { ((ViewPager) arg0).removeView(mListViews.get(arg1)); } @Override public void finishUpdate(View arg0) { } @Override public int getCount() { return mListViews.size(); } @Override public Object instantiateItem(View arg0, int arg1) { ((ViewPager) arg0).addView(mListViews.get(arg1), 0); return mListViews.get(arg1); } @Override public boolean isViewFromObject(View arg0, Object arg1) { return arg0 == (arg1); } @Override public void restoreState(Parcelable arg0, ClassLoader arg1) { } @Override public Parcelable saveState() { return null; } @Override public void startUpdate(View arg0) { } } }
效果图如下:
收藏的用户(0) X
正在加载信息~
推荐阅读
最新回复 (0)
站点信息
- 文章2305
- 用户1336
- 访客11259375
每日一句
Children see magic because they look for it.
孩子之所以能看到魔法,是因为他们在寻找。
孩子之所以能看到魔法,是因为他们在寻找。
VirtualXposed,让你无需Root也能使用Xposed框架!
CentOS 搭建 OpenVPN 服务
android studio的DDMS问题
【蓝牙开发】winsock协议错误编码解析
解决Xposed提示didn't find class
MPAndroidChart标记控件MarkerView的使用方法
排名前5的开源在线机器学习
SpringBoot打Jar包did not assign a file to the build artifact
Linux系统查看CPU使用率的几个命令
Win10定时执行php任务
Android反编译工具及方法(持续更新中)
网络爬虫Scrapy入门
OnePlus3 Android8.0的Root教程
新会员