原文:Android零基础入门第56节:翻转视图ViewFlipper打造引导页和轮播图 前面两期学习了 ViewAnimator及其子类ViewSwitcher的使用,以及ViewSwitcher的子类ImageSwitcher和TextSwitcher的使用,你都掌握了吗?本期我们一起来学习ViewAnimator另一个子类 ViewFlipper组件的使用. 一.ViewFlipper概述 ViewFlipper组件继承了 ViewAnimator,它可调用addView(View v)添…
在很多APP第一次启动时都会出现引导页,在一些APP里面还会包括一些左右滑动翻页和页面轮播切换的情况.在之前也已经学习了AdapterViewFlipper和ViewFlipper,都可以很好的实现,今天继续来学习一个功能更加强大的ViewPager组件. 一.ViewPager简介 ViewPager是android扩展包v4包中的类,这个类可以让用户左右滑动切换当前的view.ViewPager继承自ViewGroup,也就是ViewPager是一个容器类,可以包含其他的View类. Vie…
原文:Android零基础入门第54节:视图切换组件ViewSwitcher 前面三期学习了ProgressBar系列组件,那本期开始一起来学习ViewAnimator组件. 一.ViewAnimator组件概述 ViewAnimator是一个基类,它继承了 FrameLayout,因此它表现出FrameLayout的特征,可以将多个View组件叠在一起. ViewAnimator额外增加的功能正如它的名字所暗示的一样,ViewAnimator可以在View切换时表现出动画效果. ViewAni…
在上一期分享的文章末尾留了一个课后作业,有去思考如何解决吗?如果已经会了那么恭喜你,如果还不会也没关系,本期一起来学习. 一.回退栈 在前面两期的示例中,当我们完成一些操作后,如果想要回到操作之前的状态,一般我们都会按返回键,如下图所示: 然而发现并没有按照我们想要的那样进行,反而退出了程序,那应该怎么得到想要的效果呢? 我们知道Activity有任务栈,用户通过startActivity将Activity加入栈,点击返回按钮将Activity出栈.Fragment也有类似的栈,称为回退栈(Ba…
在上一期我们学习了FragmentManager和FragmentTransaction的作用,并用案例学习了Fragment的添加.移除和替换,本期一起来学习Fragment显示和隐藏.绑定和解绑. 一.Fragment显示和隐藏 由于上一期有简单介绍过对应的api,这里直接通过案例来进行学习. 创建一个新的module名为fragmentshowhide,然后创建一个Fragment对应的布局文件fragment_demo.xml,代码如下: <?xml version="1.0&qu…
前面一起学习了Fragment的创建和加载,以及其生命周期方法,那么接下来进一步来学习Fragment的具体使用,本期先来学习Fragment添加.删除.替换. 一.概述 在前面的学习中,特别是动态加载的时候,有提到FragmentManager和FragmentTransaction类,这里先来详细了解一下其到底为何物. 1.FragmentManager 要管理Activity中的Fragments,就需要使用FragmentManager类.通过getFragmentManager()或g…
一个Activity可以同时组合多个Fragment,一个Fragment也可被多个Activity 复用.Fragment可以响应自己的输入事件,并拥有自己的生命周期,但它们的生命周期直接被其所属的Activity的生命周期控制. 一.Fragment状态 与Activity类似的是,Fragment也存在如下4种状态: 运行状态:当前Fmgment位于前台,用户可见,可以获得焦点. 暂停状态:其他Activity位于前台,该Fragment依然可见,只是不能获得焦点. 停止状态:该Fragm…
Fragment创建完成后并不能单独使用,还需要将Fragment加载到Activity中,在Activity中添加Fragment的方式有两种:静态加载和动态加载,接下来分别进行学习. 一.静态加载 静态加载Fragment非常简单,直接把Fragment当成普通的控件写在Activity的布局文件中.使用<fragment></fragment>标签,该标签与其他控件的标签类似,但必须要指定android:name属性或class属性,其属性值为Fragment的全路径名称.…
随着大众生活水平的提高,再加上移动互联网的迅速发展,几乎每个人都至少拥有一台搭载Android系统的移动设备.Android设备的多样性给我们带来了很大的便捷,各Android设备拥有不同分辨率和不同屏幕大小,特别是平板电脑和手机间的差别巨大,使得同样的界面在不同的设备上显示出不同的效果.为了能够同时兼顾到手机和平板电脑的开发,自Android 3.0版本开始引入了碎片的概念,也就是Fragment. Fragment作为Android最基本.最重要的基础概念之一,在开发中经常会用到,本章我们一…
在Activity间传递的数据一般比较简单,但是有时候实际开发中也会传一些比较复杂的数据,本节一起来学习更多Activity间数据的传递. 一.常用数据类型 在前面几节我们只学习了一些常用类型的数据传递,主要是以下这些重载方法: putExtra(String name, boolean value) putExtra(String name, byte value) putExtra(String name, char value) putExtra(String name, short va…