除了Tab在一个Activity中显示多页内容,还可以使用Flipper,Flipper没有标签,是一页页的显示方式。
例子一:基础的Flipper
1)Android XML文件
Flipper采用ViewFlipper进行定义,里面依次放着各页的内容。
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout ...... >
<Button android:id="@+id/c94_flip_me" ... ... android:text="Flip me" />
<ViewFlipper
android:id="@+id/c94_details"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<TextView android:layout_width="fill_parent" <!--ViewFlipper中的第一个元素 -->
android:layout_height="wrap_content"
android:textStyle="bold"
android:textColor="#FF00FF00"
android:text="This is the first Panel"
/>
<TextView ... ...
android:text="This is the Second Panel"
/> <!--ViewFlipper中的第二个元素 -->
<TextView ... ...
android:text="This is the third Panel"
/> <!--ViewFlipper中的第三个元素 -->
</ViewFlipper>
</LinearLayout>
2)代码编写
我们点击id为c94_details的button,则依次显示ViewFlipper中的元素,循环显示,如下图所示:
public class Chapter9Test4 extends Activity{
private ViewFlipper
flipper = null;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.chapter_9_test4);
flipper
= (ViewFlipper)findViewById(R.id.c94_details);
Button button = (Button)findViewById(R.id.c94_flip_me);
button.setOnClickListener(new View.OnClickListener() {
public void onClick(View arg0) {
//每次点击button,则ViewFlipper中的显示更换为下一个元素,如果已是最后的元素,从头开始
flipper.showNext();
}
});
}
}
例子二:添加Flipper元素和自动翻页
这个例子中的XML文件如下,在LinearLayout中只有ViewFlipper,且ViewFlipper里面没有设置元素。很简单,不再展示,下面是源代码;
public class Chapter9Test5 extends Activity{
private ViewFlipper flipper = null;
public static String[] items={"lorem", "ipsum", "dolor", "sit",
... ... //若干String
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.chapter_9_test5);
//步骤1:获得flipper的实例
flipper = (ViewFlipper) findViewById(R.id.c95_details);
//步骤2:设置Flipper翻页的动态效果,在后面介绍
,这里给出进入和离开的两个效果
flipper.setInAnimation
(AnimationUtils.loadAnimation(this,R.anim.push_left_in));
flipper.setOutAnimation
(AnimationUtils.loadAnimation(this,R.anim.push_left_out));
//步骤3:通过flipper.addView向flipper动态加入每页的View
for(String item:Chapter8.items){
Button button = new Button(this);
button.setText(item);
flipper.addView
(button, new ViewGroup.LayoutParams(ViewGroup.LayoutParams.FILL_PARENT
, ViewGroup.LayoutParams.FILL_PARENT
));
}
//步骤4:设置自动翻页的时间间隔,本例为3秒
,也可以在XML文件中通过android:interval进行设置
flipper.setFlipInterval
(3000);
//步骤5:开始启动自动翻页,通过stopFlipping()可以进行停止。
flipper.startFlipping
();
}
}
这里比较麻烦的翻页的动态效果,即步骤2。我们在res/下创建信得了Floder,命名为anim,里面将存放描述动态的XML文件,我们可以字节利用SDK自动的例子,在anim按邮件import->General->FileSystem->Next->在Browser中指向...../android-sdk-linux_x86/samples/android-9/ApiDemos/res/anim,Demo例子已经给出了一些范例,我们选择push_left_in和push_left_out导入即可。
我们看看push_left_in.xml文件,描述了动态方式:
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate android:fromXDelta="100%p" android:toXDelta="0" android:duration="300"/>
<alpha android:fromAlpha="0.0" android:toAlpha="1.0" android:duration="300" />
</set>
相关链接:我的Andriod开发相关文章
分享到:
相关推荐
Android学习笔记(二三): 多页显示-Flipper的使用
资源来自pypi官网。 资源全名:django-feature-flipper-0.0.6.tar.gz
用于Flipper的Redux调试器插件 flipper-plugin-redux-debugger允许您现在在读取React Native Redux日志: 行动状态比较开始使用在您的React Native应用中安装中间件和react-native-flipper : yarn add redux-...
yarn add rn-async-storage-flipper react-native-flipper 对于iOS,您需要运行 cd ios && pod install 导入rn-async-storage-flipper库,并作为参数传递您的存储实例。 import RNAsyncStorageFlipper from 'rn-...
:high_voltage:真的很小,JavaScript + CSS(最小+ gzip)小于1KB:artist_palette:CSS使用S vue-flipper一个组件来翻转元素并具有良好的过渡效果。 :high_voltage:确实很小,JavaScript + CSS(最小+ gzip)小于1KB:...
欢迎使用flipper-plugin-bridgespy :waving_hand: React Native Bridge间谍Flipper插件安装您可以使用“管理插件”选项从Flipper内部进行安装。 为了正常工作,您必须在React Native项目中安装flipper-plugin-...
Api-flipper.zip,Ruby的功能翻转(性能和简单)__,一个api可以被认为是多个软件设备之间通信的指导手册。例如,api可用于web应用程序之间的数据库通信。通过提取实现并将数据放弃到对象中,api简化了编程。
脚蹼 :scroll: 描述Flipper是使用Jetpack Compose编写的简单倒计时应用程序。 #AndroidDevChallenge :light_bulb: 动机与情境Flipper使用一些自定义动画来模拟。 :camera_with_flash: 屏幕截图执照Copyright 2020 ...
gulp-css夹板在gulp任务中轻松创建ltr或rtl css文件。...gulp.src('/styles/*.css') .pipe(flipper()) .pipe(gulp.dest('/dist/css/'))CSS翻转帮助请关注GitHub上的文档,以获取有关如何使用flip的更多信
Flipper 桌面插件,用于通过React原生 redux 日志 :red_exclamation_mark: 对于 React Native 项目中的 Flipper 设置,请参阅 特征 :sparkles: 显示所有调度的 redux 操作 显示有关已调度操作的详细信息(操作、...
Material-Design-Flipper 引导材料设计中的动画卡片。 依赖关系 把它放在你的<head> < link href =" //maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css " rel =" stylesheet " > <...
bg-color-flipper
Flipper Android应用 移动应用统治着整个Flipper的家庭 模块拱 ├── app ├── core ├── bridge ├── modules │ ├── sample1 │ ├── sample2 app具有UI的主应用程序模块 core -核心库DEPS和utils的...
Color-Flipper
React本机跨平台应用程序 生产就绪的入门人员可以使用React Native... 使用Flipper的本机调试器:reactotron,redux-debugger等 用于Web的Redux调试器 设计 暗模式设计系统 带有eva-icons 在网络上渲染语义标签(例
Flipper 是一个用于在iOS和Android上调试移动应用程序的平台。 可以从简单的桌面界面可视化,检查和控制您的App应用程序。
资源分类:Python库 所属语言:Python 资源全名:flipper-0.7.8.tar.gz 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059
一个良好的,最新的,易于使用的入门和学习工具,适合初学者到中级。 (支持IOS和Android) 新 React-Native更新为 React-Navigation更新到 为什么使用简易入门工具? 始终是最新的React Native 0.63脚手架。 使...
点状鳍状肢使用实现的一个简单游戏。 免责声明:由于缺乏更好的描述并且未能搜索该游戏名称是什么,因此命名为Dot Flipper 。
JS-colour-flipper:更改背景颜色。 这里没什么特别的,可以为您提供可以为UXUI设计选择的美丽色彩。