博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Android应用开发基础篇(11)-----ViewFlipper
阅读量:5963 次
发布时间:2019-06-19

本文共 2976 字,大约阅读时间需要 9 分钟。

一、概述

      ViewFlipper这个部件是用来实现多页显示的,多页之间的显示一般通过手势的滑动来实现,比如处于Home界面时,可以通过滑动来显示另一页,有点像Activity之间的切换。下面的实现没有涉及到手势识别这个功能。

二、要求

     掌握ViewFlipper的使用。

三、实现

     新建工程MyFlipper,修改/res/layout/main.xml文件,在里面添加一个ViewFlipper,完整的main.xml文件如下:

1 
2
6 7
12 13
14 15

在/res/layout下新建2个文件firstview.xml和secondview.xml。这两个文件的内容几乎一样,只是显示的内容不一样,firstview.xml如下:

 

1 
5 6
14 15 16
22 23 24

secondview.xml如下:

 

1 
2
6 7
15 16
22 23 24

接着,修改MyFlipperActivity.java文件,主要是定义一个ViewFlipper对象,向它添加两个View,设置两个按钮的监听,在监听里显示前、后一个View。

 

1 package com.nan.flipper;  2  3 import android.app.Activity;  4 import android.os.Bundle;  5 import android.view.LayoutInflater;  6 import android.view.View;  7 import android.widget.Button;  8 import android.widget.ViewFlipper;  9 10 public class MyFlipperActivity extends Activity 11 {
12 private ViewFlipper mViewFlipper = null; 13 private LayoutInflater mLayoutInflater = null; 14 15 private Button firstButton = null; 16 private Button secondButton = null; 17 18 /** Called when the activity is first created. */ 19 @Override 20 public void onCreate(Bundle savedInstanceState) 21 {
22 super.onCreate(savedInstanceState); 23 setContentView(R.layout.main); 24 25 mViewFlipper = (ViewFlipper)this.findViewById(R.id.viewflipper); 26 27 mLayoutInflater = LayoutInflater.from(MyFlipperActivity.this); 28 //将布局文件firstview.xml变为View对象 29 View firstView = mLayoutInflater.inflate(R.layout.firstview, null); 30 //将布局文件secondview.xml变为View对象 31 View secondView = mLayoutInflater.inflate(R.layout.secondview, null); 32 //添加View 33 mViewFlipper.addView(firstView); 34 //添加View 35 mViewFlipper.addView(secondView); 36 37 firstButton = (Button)firstView.findViewById(R.id.firstbutton); 38 //设置按钮监听 39 firstButton.setOnClickListener(new View.OnClickListener() 40 {
41 42 @Override 43 public void onClick(View v) 44 {
45 // TODO Auto-generated method stub 46 //显示后一个View 47 mViewFlipper.showNext(); 48 } 49 }); 50 51 secondButton = (Button)secondView.findViewById(R.id.secondbutton); 52 //设置按钮监听 53 secondButton.setOnClickListener(new View.OnClickListener() 54 {
55 56 @Override 57 public void onClick(View v) 58 {
59 // TODO Auto-generated method stub 60 //显示前一个View 61 mViewFlipper.showPrevious(); 62 } 63 }); 64 65 } 66 67 }

好了,运行该程序:

 

点击一下“显示第二个View”按钮,效果如下:

 

好了,完成。

      如果加上手势识别的话就可以通过滑动来切换页面了。

转载地址:http://ktjax.baihongyu.com/

你可能感兴趣的文章
利用单壁路由实现vlan间路由
查看>>
hello world
查看>>
CentOS 7 配置yum本地base源和阿里云epel源
查看>>
python 学习导图
查看>>
生成树
查看>>
深入浅出JavaScript (五) 详解Document.write()方法
查看>>
Beta冲刺——day6
查看>>
Comet OJ - Contest #3 题解
查看>>
[网络流24题-9]试题库问题
查看>>
jquery选择器详解
查看>>
C# 保留2位小数
查看>>
使用xshell远程连接Linux
查看>>
杭电ACM1007
查看>>
faster-RCNN台标检测
查看>>
Unix环境高级编程 centos中配置apue编译环境
查看>>
运算符
查看>>
数据结构之各排序算法
查看>>
网页分帧操作<frameset>,<iframe>标签
查看>>
Vue生产环境部署
查看>>
酒店之王
查看>>