当前位置:操作系统 > 安卓/Android >>

Android ViewPager和TabHost结合

前几天看了网上关于ViewPager实现滑动切换的效果。回来试了一下,发现效果确实不错,但是切换的几个页面只是调用了不同的layout,实际上还是在一个Activity里面,对功能编写就不方便了。所以,我想到了TabHost和ViewPager结合,使用TabHost切换Activity,使用ViewPager切换界面,从而晚上切换效果。废话少说,直接看代码吧。
首先是布局的xml
 1 <?xml version="1.0" encoding="utf-8"?>
 2 <TabHost xmlns:android="http://schemas.android.com/apk/res/android"
 3     android:id="@android:id/tabhost"
 4     android:layout_width="fill_parent"
 5     android:layout_height="fill_parent" >
 6
 7     <LinearLayout
 8 android:id="@+id/linearLayout1"
 9         android:layout_width="fill_parent"
10         android:layout_height="fill_parent"
11         android:orientation="vertical" >
12
13         <TabWidget
14 android:id="@android:id/tabs"
15             android:layout_width="wrap_content"
16             android:layout_height="0dip" >
17         </TabWidget>
18
19         <LinearLayout
20 android:id="@+id/linearLayout1"
21         android:layout_width="fill_parent"
22         android:layout_height="40dip"
23         android:background="@drawable/title" >
24
25         <TextView
26 android:id="@+id/text1"
27             android:layout_width="fill_parent"
28             android:layout_height="fill_parent"
29             android:layout_weight="1.0"
30             android:gravity="center"
31             android:text="@string/black"
32             android:textColor="#FFFFFF"
33             android:textSize="22.0dip" />
34
35         <TextView
36 android:id="@+id/text2"
37             android:layout_width="fill_parent"
38             android:layout_height="fill_parent"
39             android:layout_weight="1.0"
40             android:gravity="center"
41             android:text="@string/gray"
42             android:textColor="#FFFFFF"
43             android:textSize="22.0dip" />
44
45         <TextView
46 android:id="@+id/text3"
47             android:layout_width="fill_parent"
48             android:layout_height="fill_parent"
49             android:layout_weight="1.0"
50             android:gravity="center"
51             android:text="@string/white"
52             android:textColor="#FFFFFF"
53             android:textSize="22.0dip" />
54     </LinearLayout>
55    
56     <ImageView
57 android:id="@+id/cursor"
58         android:layout_width="fill_parent"
59         android:layout_height="wrap_content"
60         android:scaleType="matrix"
61         android:src="@drawable/a" />
62
63     <android.support.v4.view.ViewPager
64 android:id="@+id/vPager"
65         android:layout_width="wrap_content"
66         android:layout_height="wrap_content"
67         android:layout_gravity="center"
68         android:layout_weight="1.0"
69         android:background="#000000"
70         android:flipInterval="30"
71         android:persistentDrawingCache="animation" />
72
73         <FrameLayout
74 android:id="@android:id/tabcontent"
75             android:layout_width="wrap_content"
76             android:layout_height="wrap_content"
77             android:visibility="gone" >
78         </FrameLayout>
79     </LinearLayout>
80
81 </TabHost>

然后是java文件
  1 package com.wcs233;
  2
  3 import java.util.ArrayList;
  4 import java.util.List;
  5
  6 import android.app.LocalActivityManager;
  7 import android.app.TabActivity;
  8 import android.content.Context;
  9 import android.content.Intent;
 10 import android.graphics.BitmapFactory;
 11 import android.graphics.Matrix;
 12 import android.os.Bundle;
 13 import android.os.Parcelable;
 14 import android.support.v4.view.PagerAdapter;
 15 import android.support.v4.view.ViewPager;
 16 import android.support.v4.view.ViewPager.OnPageChangeListener;
 17 import android.util.DisplayMetrics;
 18 import android.util.Log;
 19 import android.view.View;
 20 impor

补充:移动开发 , Android ,
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,