上篇博客中已经介绍了Fragment产生原因,以及一些基本的用法和各种API,如果你还不了解,请看:Android Fragment 真正的完全解析(上). 本篇将介绍上篇博客提到的:如何管理Fragment回退栈,Fragment如何与Activity交互,Fragment与Activity交互的最佳实践,没有视图的Fragment的用处,使用Fragment创建对话框,如何与ActionBar,MenuItem集成等~~ 1.管理Fragment回退栈 类似与Android系统为Activi…
自从Fragment出现,曾经有段时间,感觉大家谈什么都能跟Fragment谈上关系,做什么都要问下Fragment能实现不~~~哈哈,是不是有点过~~~ 本篇博客力求为大家说明Fragment如何产生,什么是Fragment,Fragment生命周期,如何静态和动态的使用Fragment,Fragment回退栈,Fragment事务:以及Fragment的一些特殊用途,例如:没有布局的Fragment有何用处?Fragment如何与Activity交互?Fragment如何创建对话框?Frag…
DatePicker 1.获取一个日历对象: Calendar cal=Calendar.getInstance(); 2.获取当前日期及时间: int year=cal.get(Calendar.YEAR); int month=cal.get(Calendar.MONTH)+1;//特殊的是Calendar中月份从0开始计数,所以加1得到常规月份 int day=cal.get(Calendar.DAY_OF_MONTH); int hour=cal.get(Calendar.HOUR_OF…
ArrayAdapter适配器: (1)用于显示基本的文字内容 (2)基本使用过程:新建适配器---创建或加载数据源---适配器加载数据源---视图加载适配器 ArrayAdapter(上下文,当前ListView加载的每一个列表项所对应的布局文件,数据源) (ArrayAdapter)数据适配器的实现过程: 1.新建适配器 arr_adapter=new ArrayAdapter<String>(context,布局文件,数据源) arr_adapter=new ArrayAdapter&l…
线性布局(LinearLayout)常用属性: android:orientation="vertical"--决定子类控件的排布方式(vertical垂直:horizontal水平) Android:garavity="center"--决定子类控件的xy的位置常用属性值: 1>center_vertical:垂直(y轴)居中 2>center_horizongtal:水平居中 3>center 居中 4>right 位于当前布局的右边 5…
搭建Android应用开发环境所需工具 1_> JDK(JAVA Development)推荐使用6.0以后版本 配置环境变量(以下是环境变量的具体内容及介绍) ====================================================== 1.下载Android Studio:点此进入Android中文社区下载AS 第一次建议下载包含SDK版本,省去再去下载SDK的麻烦,若电脑中已有SDK可自行下载,安装时只需找到本地SDK即可 -----------------…
选项卡(TabHost)是一种非常实用的组件,TabHost可以很方便地在窗口上放置多个标签页,每个标签页相当于获得了一个与外部容器相同大小的组建摆放区域.通过这种方式,就可以在一个容器中放置更多组件,例如许多手机系统会在同一个窗口第一多个标签页:来显示通话记录,包括“未接来电”,“已接来电”,“呼出电话”等. TabHost仅仅是一个简单的容器,他提供了如下两个方法来创建选项卡.添加选项卡. newTabSpec(String tag) : 创建选项卡 addTab(TabHost.TabSp…
转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/37992017 上篇博客中已经介绍了Fragment产生原因,以及一些基本的用法和各种API,如果你还不了解,请看:Android Fragment 真正的完全解析(上). 本篇将介绍上篇博客提到的:如何管理Fragment回退栈,Fragment如何与Activity交互,Fragment与Activity交互的最佳实践,没有视图的Fragment的用处,使用Fragment创…
在Activity中,可以直接用findViewById(int id),通过xml的id来找到对应的View. 查找官方的api,具体如下: https://developer.android.google.cn/reference/android/app/Activity.html#findViewById(int) 而在Fragment中,直接使用会报错如下: The method findViewById(int) is undefined for the type Fragment 可…
原文地址:http://blog.csdn.net/crazy1235/article/details/42678877 效果:滑动切换:点击标签切换. 代码:https://github.com/ldb-github/Layout_Tab 1.布局:使用LinearLayout布置标签:再使用ViewPager来布置Fragment:使用ImageView作为指示器. <?xml version="1.0" encoding="utf-8"?> <…
 今天我们要实现的这个效果呢,在Android的应用中十分地常见,我们可以看到下面两张图,无论是系统内置的联系人应用,还是AnyView的阅读器应用,我们总能找到这样的影子,当我们滑动屏幕时,Tab可以相应地完成切换,而当我们点击Tab时,我们的屏幕同样可以完成切换.讲到滑动,我们会立即想到PagerView,讲到ActionBar,我们立即会想到将ActionBar的导航模式.那么,我们今天要做的一件事情就是,通过这些组件的组合,来实现这样一个效果. 按照一般的思路,我们或许会这么做:首先,使…
转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/37970961 自从Fragment出现,曾经有段时间,感觉大家谈什么都能跟Fragment谈上关系,做什么都要问下Fragment能实现不~~~哈哈,是不是有点过~~~ 本篇博客力求为大家说明Fragment如何产生,什么是Fragment,Fragment生命周期,如何静态和动态的使用Fragment,Fragment回退栈,Fragment事务:以及Fragment的一些特…
Info: 自学Android之旅第二篇,初步学习会有疏漏,以后我会不断修改补全,直到完美. 2014-10-09:初版 2014-11-12: 重新配置了一台电脑,更新在学习robotium过程中,遇到一些环境变量没有配置的问题.记得配置JAVA_HOME和ANDROID_HOME. -------------------------------------------- 补一篇Android环境配置: SDK(Software development kit)软件开发工具包.被软件开发工程师…
原处: http://blog.csdn.net/lmj623565791/article/details/37970961 自从Fragment出现,曾经有段时间,感觉大家谈什么都能跟Fragment谈上关系,做什么都要问下Fragment能实现不~~~哈哈,是不是有点过~~~ 本篇博客力求为大家说明Fragment如何产生,什么是Fragment,Fragment生命周期,如何静态和动态的使用Fragment,Fragment回退栈,Fragment事务:以及Fragment的一些特殊用途,…
Fragment 相信基本上每个android developer都用过,但是知晓其原理 用的好的还是不多,今天就从源码的角度上来带着大家分析一下Fragment的源码,对fragment有了更深层次的认识以后相信 写出来的代码也会越来越好看. 首先,我们来看第一个流程,fragment是怎么加载到界面上的,借着这个流程分析,能读完绝大多数fragment的源码. 一般我们显示一个fragment的时候 喜欢如下这种做法: blankFragment=new BlankFragment(); f…
一.问题描写叙述 本系列将结合案例应用,陆续向大家介绍一些Android典型界面的设计,首先说说tab导航,导航分为一层和两层(底部区块+区域内头部导航).主要实现方案有RadioGroup+ViewPage+Fragment.Viewpager Indicator.ActionBar Tabs.FragmentTabHost+Fragment等,以下我们先採用RadioGroup+ViewPage+Fragment实现区域头部导航. 如图所看到的: 二.案例主要组件 1.先看一下MainAct…
[Android自学之旅] Android开发环境的搭建 搭建参考教程: http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html http://www.cnblogs.com/bjzhanghao/archive/2012/11/14/2769409.html 下载开发工具 Jave SDK: http://www.oracle.com/technetwork/java/javase/…
[Android自学之旅] 目录 [Android自学之旅] Android开发环境的搭建…
Gallery与之前讲的Spinner有共同的父类:AbsSpinner,表明Gallery和Spinner都是一个列表框.他们之间的区别在于Spinner显示的是一个垂直的列表框,而Gallery显示的是一个水平的列表框.Gallery与Spinner有一个区别:Spinner的作用是供用户选择,而Gallery则允许用户通过拖动来查看上一个.下一个列表项. Gallery常用的XML属性及相关方法 XML属性 相关方法 说明 android:animationDuration setAnim…
Activity间的跳转 Android中的Activity就是Android应用与用户的接口,所以了解Activity间的跳转还是必要的.在 Android 中,不同的 Activity 实例可能运行在一个进程中,也可能运行在不同的进程中.因此我们需要一种特别的机制帮助我们在 Activity 之间传递消息.Android 中通过 Intent 对象来表示一条消息,一个 Intent 对象不仅包含有这个消息的目的地,还可以包含消息的内容,这好比一封 Email,其中不仅应该包含收件地址,还可以…
常用控件 9.Dialog 我们经常会需要在Android界面上弹出一些对话框,比如询问用户或者让用户选择.这些功能我们叫它Android Dialog对话框 对话框,要创建对话框之前首先要创建Builder类创建者,Builder是AlertDialog的子类,而且还是它的内部类. setPositiveButton --设置最左边的按钮setNeutralButton --设置中间的按钮setNegativeButton --设置最右边的按钮 builder = new Builder(Ma…
常用控件3.checkbox 复选框,确定是否勾选,点击一下勾选,点击第二下取消,当有一系列备选项时适合用checkbox控件,方便用户提交数据. 贴上例子Activity的java代码 package com.example.checkbox; import android.os.Bundle; import android.app.Activity; import android.view.Menu; import android.widget.CheckBox; import androi…
常用控件 控件是对数据和方法的封装.控件可以有自己的属性和方法.属性是控件数据的简单访问者.方法则是控件的一些简单而可见的功能.所有控件都是继承View类 介绍android原生提供几种常用的控件button/imagebutton.checkbox/radiobutton.progressbar/seekbar.tabSpec/tabHost.ListView.Dialog,主要为了掌握控件使用的一般规律. 1.button 按钮 Button是各种UI中最常用的控件之一,用户可以通过触摸它来…
星级评分条(RatingBar)与拖动条十分相似,他们还有共同的父类AbsSeekBar.实际上星级评分条和拖动条的用法和功能都十分的接近:他们都允许用户通过拖动来改变进度.RatingBar与SeekBar的最大区别在于:RatingBar是通过星星来表示进度. 为了让程序能响应星级评分条评分的改变,程序可以考虑为它绑定一个OnRatingBarChangeListener监听器. 星级评分条支持的常见的XML属性. XMl属性 说明 android:isIndicator 设置该星级评分条是…
拖动条(SeekBar)和进度条非常相似,只是进度条采用颜色填充来表明进度完成的程度,而拖动条则通过滑块的位置来标识数值----而且拖动条允许用户拖动滑动块来改变值,因此拖动条通常用于对系统的某种数值进行调节,比如音量调节. SeekBar允许用户改变拖动条的滑块外观,改变滑块外观通过如下属性来指定 android:thumb  指定一个Drawable对象,该对象将作为自定义滑块. 为了让程序能响应拖动条滑块位置的改变,程序可以考虑为他绑定一个OnSeekBarChangerListener监…
进度条(ProgressBar)也是UI界面中的一种非常使用的组件,通常用于向用户显示某个耗时完成的百分比.因此进度条可以动态的显示进度,因此避免长时间地执行某个耗时操作时,让用户感觉程序失去了响应,从而更好的提高用户界面的有好性. Android支持几种风格的进度条,通过Style属性可以为进度条ProgressBar指定风格,该属性支持一下几个属性值. @android:style/widget.ProgressBar.Horizontal————水平进度条 @android:style/w…
日期(DatePicker).时间(TimePicker)是两个比较易用的控件,他们都是从帧布局FrameLayout派生而出的:他们在FrameLayout的基础上提供了一些方法来获取当前用户所选择的日期和时间:如果程序需要获取日期和时间,则可以通过为DatePicker添加OnDateChangedListener进行监听,为TimePicker添加OnTimeChangeListenter进行监听来实现. 以一个让用户选择日期和时间的例子来展示下他们的功能和用法. layout/main.…
列表选择框(Spinner)与Swing编程里面的Spinner不同,这里的Spinner其实就是一个列表选项框. Spinner是ViewGroup的间接子类,因此他也可作为容器使用. Spinner支持的常用XML属性和说明: XML属性 说明 android:prompt 设置该列表框的提示 android:entries 使用数组资源设置该下拉列表框的列表项目 啥都不说了我们看看代码: layout/main.xml <?xml version="1.0" encodin…
自动完成文本框(AutoCompleteTextView)从EditText派生而出,实际上他也是一个编辑框,但他比普通的编辑框多了一个功能:当用户输入一定字符后,自动完成文本框会显示一个下拉菜单,供用户从中选择,当用户选择了某个菜单项过后,AutoCompleteTextView就会按用户选择自动填写该文本框. AutoCompleteTextView支持的常用的XML属性和相关方法及说明 XML属性 相关方法 说明 android:completionHint setCompletionHi…
按钮(Button)与图片按钮(ImageButton)组件的功能和用法 Button继承了TextView,ImageButton继承了Button.不管是Button还是ImageButton,他们的功能都很单一,主要是在UI界面生成一个按钮,该按钮可以供用户单击,当用户单击按钮后出发一个Onclick事件. Button  和  ImageButton的不同在于Button生成的按钮显示文字,ImageButton生成的按钮显示图片.(关于ImageButton属性android:text…