简单的导航viewpager

下载PagerSlidingTabStrip        https://github.com/astuetz/PagerSlidingTabStrip

主界面:

 1 public class MainActivity extends FragmentActivity {
 2
 3     private ViewPager viewPager;
 4     private PagerSlidingTabStrip tab;
 5     private String[] Titles={"页面一","页面二","页面三","页面四"};
 6     private DisplayMetrics dm;
 7     @Override
 8     protected void onCreate(Bundle savedInstanceState) {
 9         super.onCreate(savedInstanceState);
10         setContentView(R.layout.activity_main);
11         viewPager = (ViewPager) findViewById(R.id.viewPager);
12         viewPager.setAdapter(new TestAdapter(getSupportFragmentManager()));
13         tab=(PagerSlidingTabStrip) findViewById(R.id.tabStrip);
14         tab.setViewPager(viewPager);
15
16         dm = getResources().getDisplayMetrics();
17         // 设置填充满屏幕
18         tab.setShouldExpand(true);
19         // 设置分割线
20         tab.setDividerColor(Color.TRANSPARENT);
21         // 设置底部线的高度
22         tab.setUnderlineHeight((int) TypedValue.applyDimension(
23                 TypedValue.COMPLEX_UNIT_DIP, 1, dm));
24         // 设置Indicator的高度
25         tab.setIndicatorHeight((int) TypedValue.applyDimension(
26                 TypedValue.COMPLEX_UNIT_DIP, 5, dm));
27         // 标题文字的大小
28         tab.setTextSize((int) TypedValue.applyDimension(
29                 TypedValue.COMPLEX_UNIT_SP, 18, dm));
30         // Indicator的颜色
31         tab.setIndicatorColor(Color.parseColor("#569844"));
32         // 设置选中文字的颜色
33         tab.setSelectedTextColor(Color.parseColor("#569844"));
34         // 点击的背景色
35         tab.setTabBackground(0);
36     }
37
38     class TestAdapter extends FragmentPagerAdapter{
39
40         public TestAdapter(FragmentManager fm) {
41             super(fm);
42             // TODO Auto-generated constructor stub
43         }
44
45         @Override
46         public Fragment getItem(int position) {
47             // TODO Auto-generated method stub
48             PagerFragment fragment=new PagerFragment();
49             Bundle bundle=new Bundle();
50             bundle.putString("TITLE", Titles[position]);
51             fragment.setArguments(bundle);
52             return fragment;
53         }
54
55         @Override
56         public int getCount() {
57             // TODO Auto-generated method stub
58             return Titles.length;
59         }
60         @Override
61         public CharSequence getPageTitle(int position) {
62             // TODO Auto-generated method stub
63             return Titles[position];
64         }
65
66     }
67
68 }

fragment类:

 1 public class PagerFragment extends Fragment {
 2
 3     @Override
 4     public View onCreateView(LayoutInflater inflater, ViewGroup container,
 5             Bundle savedInstanceState) {
 6         // TODO Auto-generated method stub
 7         RelativeLayout layout=new RelativeLayout(getActivity());
 8         LayoutParams params=new LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT);
 9         layout.setLayoutParams(params);
10         TextView text=new TextView(getActivity());
11         text.setLayoutParams(params);
12         text.setGravity(Gravity.CENTER);
13         Bundle bundle=getArguments();
14         String title=bundle.getString("TITLE");
15         text.setText(title);
16         layout.addView(text);
17         return layout;
18     }
19 }

attr:

 1 <?xml version="1.0" encoding="utf-8"?>
 2 <resources>
 3
 4     <declare-styleable name="PagerSlidingTabStrip">
 5         <attr name="pstsIndicatorColor" format="color" />
 6         <attr name="pstsUnderlineColor" format="color" />
 7         <attr name="pstsDividerColor" format="color" />
 8         <attr name="pstsIndicatorHeight" format="dimension" />
 9         <attr name="pstsUnderlineHeight" format="dimension" />
10         <attr name="pstsDividerPadding" format="dimension" />
11         <attr name="pstsTabPaddingLeftRight" format="dimension" />
12         <attr name="pstsScrollOffset" format="dimension" />
13         <attr name="pstsTabBackground" format="reference" />
14         <attr name="pstsShouldExpand" format="boolean" />
15         <attr name="pstsTextAllCaps" format="boolean" />
16     </declare-styleable>
17
18 </resources>
时间: 2024-11-01 10:58:25

简单的导航viewpager的相关文章

jquery实现简单的导航栏切换效果($(this).index)

一个简单的导航栏切换效果的制作,主要通过索引值和jquery的siblings()来实现 html代码: <div class="container"> <ul class="top-nav"> <li class="nav">html</li> <li class="nav">css</li> <li class="nav"&g

6.3 简单的导航菜单

作为一个成功的网站,导航菜单是永远不可缺少的.导航菜单的风格往往也决定了整个网站的风格,因此很多设计者都会投入很多时间和精力来制作各式各样的导航条,从而体现网站的整体构架. 在传统方式下,制作导航菜单是很麻烦的工作.需要使用表格,设置复杂的属性,还需要使用JavaScript实现相应鼠标指针经过或点击动作.如果用CSS来制作导航菜单,实现起来就非常简单了. 一.简单的竖直排列菜单 当项目列表的list-style-type属性值为“none”时,制作各式各样的菜单和导航条便成了项目列表的最大用处

Android开发:史上最简单方便的viewpager加indicator的方法

开发Android应用的时候,每次给viewpager加indicator的时候,是不是感觉到很无力呢,看看JakeWharton大神的github,要么要应用library,要么把code加到自己的项目中,还要加attrs,加各种value,比如colors,strings,其实超过90%以上的时候,我们的需要其实很简单,只是在底部的中间加上指示圆点,而且JakeWharton大神的默认的是空心圆圈,还要在onDraw中改成实心的圆形,是不是厌烦啦,每次都要这么麻烦,好了,终极简单的解决方法出

写一个简单的导航

制作一个如下图的导航按钮.当鼠标移入导航栏的首页,商店等字体时,前面的小图标和字颜色一起变红!代码如下: <meta charset="UTF-8"> <title>Title</title> <link rel="stylesheet" href="zy.css"></head><body><div class="daohang"> <

【CSS】 一个简单的导航条

今天来做一个导航条! 首先写一个坯子: 1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 2 <html> 3 <head> 4 <meta http-equiv="Content-Type" content="text/html;cha

制作简单的导航栏

<!DOCTYPE html> <html lang="en"><head> <meta charset="UTF-8"> <title>导航栏</title></head><style>#container{margin:0 auto; width:800px;}#nav ul{list-style:none;}  #nav ul li{float:left;}#nav

一个简单的导航菜单切换显示

一直都在用导航栏菜单选项的切换,使用js,jquery实现过相应的代码.下面展示一下用js实现切换: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Test</title> <style type="text/css"> #container{width: 1100px;

css制作简单的导航栏

//css代码 #menu{ height: 65px; width:100%; background-color: rgba(0, 0, 0, 0.5);}#menu ul{ list-style: none;}#menu ul li{ float: left; position: relative;//如果这里不设置为这样的话,显示的下拉是水平的}#menu ul li a {//最头部的导航链接text-align: center;border-right:1px solid #e9e9e

小试牛刀1:制作一个简单的导航栏页面

页面效果大概目标:http://www.daxues.cn/forum.php 一.布局 从页面来看,可以分为三个部分,第一部分是导航栏,第二部分是有“大学生论坛”字样的蓝色部分,余下的是第三部分也可以分为二部分:搜索栏和主要内容区域:而主要内容区域又可分为:导航栏.主体.底部. 1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DT