
Android
文章平均质量分 84
QuietShake
没有简述。
展开
-
Android中如何批量设置矢量图
Android中在设定控件的时候不论是按钮还是文本,为它附加一个小图片是非常常见的,我们知道Button和TextView等控件都有drawable属性可以在它的文字的上下左右设置图片,通常我们的做法是:从阿里巴巴矢量图找到想要的矢量图设置大小和颜色后以必要的格式下载 然后直接为控件设置。但是如果一个界面甚至一个App需要设置很多个矢量图,这种方法就显得有些麻烦和笨拙了。这里有一个快捷原创 2016-10-08 21:09:48 · 1625 阅读 · 2 评论 -
Android中的AlarmManager
闹钟功能任何手机都自带的,闹钟是系统应用程序,既然是应用程序也是可以人为的写出来的。AlarmManager提供了一种系统级的提示服务,允许你安排在将来的某个时间执行一个服务,android就是通过AlarmManger来管理闹钟的。系统级的服务不需要实例化,通过Content.getStstemService()方法获取,进行相关功能设定和事件监听即可使用。AlarmManger的常用方法和原创 2016-10-13 21:14:29 · 461 阅读 · 0 评论 -
Android中的Dialog对话框
对话框在任何开发中都十分常用,Android中的对话框功能更是全面有强大。App的使用一定程度上依赖于用户交互,良好的体验就要从完善的提示功能开始。Dialog作为警告对话框,在退出或删除时最为常用。在Android中对话框中可以显示文字、按钮、单选多选按钮、进度条、日期时间选择器甚至一个列表项乃至一个界面。对话框主要有四个区域:图标区、标题区、内容区、按钮区,不同的区域都有特定的方法去设原创 2016-09-27 21:21:09 · 635 阅读 · 0 评论 -
Android中的ImageSwitch控件
ImageSwitch是Android中又一个图片查看小组件,说它是小组件是因为我不太会用,也不怎么常用,它改变显示图片的方式要通过其他控件,整个显示过程都要手动操控,相同的功能Gallery和AdapterViewFlipper能够很好的完成,重要的是ImageSwitch只能显示图片。下面做一个简单的实现,整三张图片试试。布局文件中只需要写入ImageSwitch标签即可,并为它准备两个按原创 2016-09-27 21:11:40 · 3931 阅读 · 0 评论 -
Android中的ActionBar
在之前项目实践中,对于项目中自动显示并一直显示的位于屏幕顶端的标题栏我都采取requestWindowFeature(Window.FEATURE_NO_TITLE)的方法将其隐藏,其实它就是ActionBar了,Android 3.0以后ActionBar取代了传统的tittle bar和menu,成为了二者的结合。在某些应用开发中还是有用的,它的样式是这样的 ActionBar的图标原创 2016-10-12 23:19:48 · 489 阅读 · 0 评论 -
Android中的菜单
菜单在很多系统中都是有的,通过菜单我们可以做很多额外的操作,大部分时候菜单作用是为了界面美观,将控件收录到一个地方。Android中Menu在手机应用程序中出现较少了,当我们创建Android项目后MainActivity除了自动创建一个TextView还默认显示应用程序的菜单,点击后还能弹出一个选项,而且自动重写了onCreateOptionsMenu方法和onOptionsItemSelect原创 2016-10-12 23:14:36 · 895 阅读 · 0 评论 -
Android中的BroadcastReceiver
BroadcastReceiver也是Android系统的四大组件之一,是一种全局的监听器,用于监听系统全局的广播消息。那么问题来了,什么是广播。Android作为一种手机系统,在执行很多事情的时候都会以数据形式传输信息出去,例如在手机开机、电池电量低、屏幕锁定等等情况下都会发送,这种数据信息就是广播,能够收到这种信息的就是广播接收器,这些信息由系统发送,就是系统广播,广播也可以通过普通应用程序发原创 2016-10-12 23:09:35 · 561 阅读 · 0 评论 -
Android中实现页面滑动——ViewPager
ViewPager可以实现多页面滑动切换以及动画效果,在很多开发场合都十分常用,不仅方便实用而且功能强大。ViewPager类直接继承了ViewGroup类,所以它是一个容器类,可以在其中添加其他的view类。ViewPager是Google SDK自带的附加包v4包的类(即android.support-v4.jar),所以在写布局文件时需要引用完整类名。经验表明这样一个View必然要用到适原创 2016-09-26 21:23:47 · 6095 阅读 · 1 评论 -
Android适配器的使用—GridView、Gellery、AdapterViewFilpper
已经学过ListView、Spinner、AutoCompleteTextView都需要通过适配器的帮助才能完成数据填充和操作,这里还有三种控件亦需要使用适配器才能愉快的玩耍。1)GridView学过了表格布局(TableLayout)、网格布局(GridLayout),相似的还有GridView(网格视图)。网格视图与列表视图(ListView有相同的父类AdapterView),它们的原创 2016-09-26 21:09:27 · 915 阅读 · 0 评论 -
Android中的线程、进程和消息处理机制
应用程序的启动运行就是一个进程的触发,我们知道进程是由线程组成的。Handler是Android中用来进行线程间的通信的。1)Android进程分类a.前台进程是用户当前正在使用的进程。只有一些前台进程可以在任何时候都存在。只有在系统内存无法维持当前进程运行时才会被结束,也可以手动降级(即关闭)。如果有以下的情形的那么就是前台进程:这个进程运行着一个正在和用户交互的Activity原创 2016-10-13 21:18:10 · 1753 阅读 · 0 评论 -
Android四大布局及属性
在博客上整理学过的东西是一种麻烦却又深刻的学习方式,原本在另一个博客写的,但是那个博客似乎不支持代码写入,也没有自动存稿,导致我一下午的成果灰飞烟灭了。反正都是学习嘛,再写一遍也无妨。学到过的UI都需要布局,布局是为了为UI界面设定一定的结构。Android号称四大组件,五大布局。四大组件即Activity、Service、Broadcast Receiver、Content Provid原创 2016-09-19 19:12:45 · 804 阅读 · 0 评论 -
Android中SQLite使用拓展
之前学到SQLite的使用,我们注意到在进行增删改查的操作时,每次都要通过书写String类型的SQL语句才能完成操作,通常在这里我们最容易出错,而且出现错误极难找出,原因是SQL语句的对错eclipse是检查不出来的,而且运行的时候它又把错误位置报在别处,所以SQL语句的问题必然困扰很多人。事实上,SQLiteDataBase类中封装了关于增删改查的方法,可以不写SQL语句来完成对数据库的操原创 2016-10-19 21:00:12 · 835 阅读 · 0 评论 -
Android中自带的SQLite数据库
当我们需要存储大量数据的时候就需要数据库,Android自带了一种轻量级数据库SQLite。SQLite甚至不需要安装和启动服务进程,它只是一个后缀为.db的数据库文件,但它支持SQL语句。关于SQLite的使用需要一个SQLiteDataBase类,该类底层就是一个数据库文件,一个该类代表一个数据库,对数据库的操作也要通过SQLiteDataBase类。 SQLiteDatabase原创 2016-10-18 21:16:51 · 27331 阅读 · 4 评论 -
Android中的文件IO与Preferences
在软件开发中很多情况都需要用到数据的存储,Android中存数据和取数据与Java是相似的,都需要使用流的机制。可以将数据存储到手机内存、SD卡和网络端。Android中较为常用的是java.io.FileOutputStream和java.io.FileInputStream这一对流类,同样也需要通过File类来构造一个具体指向文件或文件夹以便操作的对象,不同的是Android中不通过新建流原创 2016-10-17 21:07:34 · 572 阅读 · 0 评论 -
利用Intent跳转其他程序的拓展
我们知道Intent跳转功能十分强大,可以通过设置属性可以从当前程序跳转到系统程序及其他程序,下面以几个常用的跳转为例做一个简单的实现。布局文件如下<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools原创 2016-10-02 10:13:54 · 399 阅读 · 0 评论 -
Android中的PopWindow控件
什么事PopWindow呢?其实很常见的,就是一个简单界面本来不在屏幕中,通过点击事件就会在所点击的控件例如Button旁边显示出来,通过点击屏幕周边可以再次隐藏,以下我们以一个分享的例子做一个简单的实现。布局文件如下<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:to原创 2016-10-02 10:06:25 · 683 阅读 · 0 评论 -
Activity加载模式及数据传递
Activity的启动方式有两种,一种是应用程序启动时默认启动,另一种是通过Intent启动。在做Activity生命周期的实验的时候,我们发现在通过Intent做页面切换的时候新启动的Activity会覆盖到原来的Activity之上,销毁新的Activity后,原来的Activity就会出现,我们知道这是因为Activity栈的关系,其实还与Activity的加载模式有关。Androi原创 2016-09-29 21:19:44 · 1117 阅读 · 0 评论 -
Android中的Intent
Intent是一种运行时绑定机制,它的作用是在程序运行是连接Activity、Service和BroadcastReceiver。Intent本意是“请求,意图”,通过Intent可以在程序件跳转和传递数据,Intent包含了具体的请求信息,针对不同的组件包含的信息有所不同,且不同组件的启动方式也不同,一个Intent就是一次对将要执行的操作的抽象描述。Intent启动组件的方式如下原创 2016-09-29 22:09:44 · 1120 阅读 · 0 评论 -
Activity及Activity的生命周期
Android四大组件五大布局。四大组件是: Activity对于初学者来说是接触最多的一个,当然我也是,Activity是应用程序的表现层,应用程序中每个屏幕的显示都通过继承和扩展Activity类来实现。App中多个页面的切换即是通过多个Activity的相互跳转来完成的。一般情况下,一个Activity类中就需要为它设置一个View,这样我们可以认为这个Activity代表这个界面。原创 2016-09-28 21:51:01 · 848 阅读 · 0 评论 -
Android中的ContentProvider
内容提供器,同样作为|Android四大组件,在学习Android的过程中对于它是最陌生的。它的作用是是实现应用程序之间交换数据,ContentProvider是不同应用程序之间进行数据交换的标准API,当一个应用程序需要把自己的数据暴露给其他程序使用时,该应用程序就可通过提供ContentProvider来实现,其他应用程序可通过ContentResolver来操作ContentProvider原创 2016-10-22 14:19:18 · 534 阅读 · 0 评论 -
Android中的Service
在手机管理中经常看到进程和服务,进程指的就是App应用在运行,服务就是Android四大组件之一的Service。Service是一个具有较长生命周期但没有用户界面的组件,说它生命周期长并不是它运行中回调的方法多,而是它可以存在很长时间,如果必要可以一直运行,没有用户界面就是看不到,无法与用户进行交互,如果不以特殊的方式表现它的状态是无法获知它的存在的。Android手机中诸如后台下载、音乐后原创 2016-10-11 22:31:36 · 434 阅读 · 0 评论 -
Android中的进度条、拖动条及星级评分控件
进度条控件(ProgressBar)、拖动条控件(SeekBar)、星级评分控件(RatingBar)在Android开发中都是比较常用的控件。进度条用来显示一个耗时动作的进度,但它并不能自动显示进度的变化需要通过方法来控制。进度条样式大体有两种:水平进度条和圆形进度条(即定时进度条和不定时进度条,也叫确定的进度条和不确定的进度条),默认为圆形进度条。圆形进度条无法显示进度比例,只要其可见就会原创 2016-09-21 14:07:21 · 4057 阅读 · 0 评论 -
Android中的ScrollView控件
滚动条,它更像一种布局,但ScrollView只能有一个孩子,只有一个孩子怎么滚动呢,所以需要先嵌套一个布局,如线性布局,这样就可以包含多个内容,内容过多就可以滚动。ScrollView只能设置垂直滚动,水平滚动有对应的HorizontalScrollView,同样它只能设置水平滚动。下面为方便测试,进重复显示相同内容。布局XML代码<ScrollView xmlns:android="h原创 2016-09-21 10:01:14 · 615 阅读 · 0 评论 -
Android中的Calendar日历控件
前面在学习DatePicker控件时,其中包含了Calendar控件。Calendar控件是一个显示日历的控件的,默认为系统当月当天,也可以切换时间,Android为其提供了多样的风格,可以在布局文件中直接为其设计。具体属性如下设置首日 : firstDayOfWeek, 设置星期几是每周的第一天, 默认是周日(值为数字,该数字表示第二周,所以若要设置周一为第一天应填2);选中颜色 : f原创 2016-09-21 08:30:56 · 1540 阅读 · 0 评论 -
Android中的时间控件
Android中显示时间的方式有两种,模拟时钟(AnalogClock)和数字时钟(DigitalClock)。模拟时钟有三个属性可以分别为钟面、时针、分针设置图片,dial、hand_hour、hand_minute,属性值均为对图片的引用。模拟时针只有分针和时针,没有秒针,数字时钟可以精确到秒。另外,Android中还有修改日期和时间的控件日期选择控件(DatePicker)和时间选择控件原创 2016-09-20 16:31:03 · 2838 阅读 · 1 评论 -
Adroid中的CheckBox控件和RadioButton控件
复选框和单选按钮在选择项中出现最多,二者都有一个checked属性,值为true或false,可以将其默认设置为选中或不选中。其中RadioButton须放入一个RadioGroup中,RadioGroup中有一个和线性布局一样的orientation属性,值为horizontal或vertical,设置单选按钮的排列方式,默认为水平排列,一个RadioGroup中只能有一个RadioButton原创 2016-09-20 15:15:47 · 412 阅读 · 0 评论 -
Android中最基本的控件及属性
Android开发中常用的控件很多,主要有TextView、EditView、Button、ImageView,当然Android中的控件不止这些,这里先列举一些最常用的控件及属性,日后再叙述其他控件。1.TextView主要用来显示文本,也可以通过背景圈定范围属性: text 设置文本内容 textSize设置文本字体大小,值为数字,单位sp text原创 2016-09-20 09:53:01 · 908 阅读 · 1 评论 -
Android中的Fragment
Fragment即是Activity碎片,Fragment作为Activity界面的一部分组成出现,可以在一个Activity中同时出现多个Fragment,一个Fragment亦可在多个Activity中使用。Android3.0引入Fragment的初衷是为了适应大屏幕的平台电脑,Framgment通过对UI组件进行分组,模块化管理,简化了大屏幕UI的设计,可以更方便地在运行过程中动态更新原创 2016-10-08 22:03:46 · 487 阅读 · 0 评论 -
Android中如何自定义View
我们在做界面的时候发现界面中很多条条目目很相似,只是内容或背景不同,样式基本是一样的,导致开发者一直在重复写一样的代码,在我们看来完全可以作为一个View来使用,但是Android中又没有这样的View。当然我们可以使用ListView,但是它也并非条目数量太多,一般也不需要变动,而且别的界面也需要,我们更倾向于像使用普通View一样的使用方法,所以使用自定义控件比较方便。首先我们需要为自定义原创 2016-10-08 21:24:11 · 1149 阅读 · 5 评论 -
Android中的ToggleButton和Switch开关控件
开关按钮,只有开和关两种状态,在XML文件中需要为它布置两个属性textOn和textOff分别表示开关状态显示的文字,在Activity类文件中,通过isChecked方法判断是否开,通过setOnCheckedChangeListener()方法设置点击事件。这里有一个开关按钮开关电灯的实例,通过点击ToggleButton更换图片达到效果。布局文件如下<LinearLayout原创 2016-09-20 10:40:43 · 501 阅读 · 0 评论 -
Android中的GridLayout布局及Shap,Selector文件的使用
关于GridLayout,它是一个网格布局,Android五大布局有一个TableLayout(表格布局),显然Android中许多布局和控件存在复杂的继承关系,我认为没必要区分它们的区别和来源,只要能到达自己所要完成的界面效果,用什么都是一样的,当然区分清楚也是为了方便使用和记忆。那么继表格布局之后网格布局有什么优势呢,首先,表格布局是不能跨行的,而且跨列仅局限于在当前列有空余空间的情况下,其次原创 2016-09-24 20:16:42 · 2593 阅读 · 0 评论 -
Android中BaseAdapter在ListView中的应用与优化
作为Adapter的基类,BaseAdapter拥有相当自由的使用空间,虽然使用格式较其他Adapter更加繁复,但是套路基本固定,也不算难。我们知道ListView中的各个条目是可以点击的,但是如果通过自定义布局为每个条目加入按钮控件,ListView本身的点击事件会覆盖按钮的点击事件,导致无法为按钮添加事件,如果使用BaseAdapter的话就可以是实现,而如果子条目的控件中加入按钮控件,Li原创 2016-09-25 18:58:58 · 487 阅读 · 0 评论 -
Android中的ListView和Adapter的使用
不论是Android开发还是其他方面的开发,我认为列表都是非常常用的一种控件,现在是一个信息时代,更是一个数据时代,庞大的数据和频繁更新的数据人工一条条输入是一件很费力的工作。ListView作为Android中的列表控件同样十分重要,Android为它配备的功能和实现方法也非常多样和强大。在学ListView前看到过很多关于ListView的描述,论使用,一开始就引入适配器,当然最常用的原创 2016-09-25 16:46:01 · 810 阅读 · 0 评论 -
Android中的AutoCompleteTextView控件
AutoCompleteTextView即自动完成文本框,它与文本编辑框(EditText)相比最大的亮点就是根据输入内容为用户提供参考,并可以通过选择备选项完成输入。主要属性如下completionHint:设置下拉框菜单中的提示标题completionThreshold="1":设置用户至少输入几个字符才会显示提示dropDownWidth:设置下拉菜单的宽度popupBack原创 2016-09-25 10:24:01 · 722 阅读 · 0 评论 -
Android中Spinner控件及级联Spinner的使用
下拉框是Android中一个较为常用的控件,用于从下拉选项中选出一个选项,这种方式可以很好的节省控件,如中国32个省市和地区,如果挨个放在屏幕里不美观且占位置。它有如下属性entries:设置显示数组数据dropDownWidth:设置下拉列表的宽度dropDownSelector:设置Spinner组件的下拉框被选择的动态效果popupBackground:下拉框的背景原创 2016-09-25 10:15:30 · 1997 阅读 · 0 评论 -
Android中的Chronometer控件
Chronometer计是一个以1秒间隔逐渐增长的计时器,它是Android中较小却较常用的控件。计时器的启动需要设定一个起始时间基准,得到一个从App启动到启动事件被触发的时间(毫秒),如果不设定,计时器会在App启动是就开始计时,启动事件触发后,直接显示已经计数到的数字。它的额外属性只有一个format,设置格式,内容可以是"%s",可以添加额外的文字,如“计时器%s”,也可以“mm:ss原创 2016-09-24 23:33:27 · 950 阅读 · 0 评论 -
Android中的切换卡TabWidget布局简介
切换卡由TabHost作为根元素,包含TabWidget和FrameLayout两个子元素,TabWidget表示切换卡中的点击标签,FrameLayout(帧布局)中包含切换卡中需要显示的内容,所有想要显示的不同内容都放在同一个帧布局中。其中TabHost、TabWidget、FrameLayout必须为它们指定Android预设的id:tabhost,tabs,tabcontent(很奇怪的设原创 2016-09-24 21:58:28 · 1003 阅读 · 0 评论 -
Android中的SlidingDrawer
Android中的SlidingDrawer可以实现抽屉效果,虽然已经过时了效果还是不错的。SlidingDrawer想必普通的View具有很独特的设定方式,首先它需要一个用于触发抽屉打开关闭的handler组件,一般使用Button或者ImageView等,其次它需要一个指定抽屉内容的content属性。我所说的独特之处在于,handler和content的id是在SlingDrawer中指定的原创 2016-10-10 20:57:58 · 966 阅读 · 0 评论 -
Android中的Notification
对于通知(Notification)相信没有人陌生,只是不知道指的是什么罢了。Notification是显示在手机状态栏的一种全局效果通知(手机状态栏位于手机屏幕的最上方,用于显示了手机当前的网络状态,电池状态,时间等)。作为四大组件之一,在Android的App中相当常用。在Android中Notification的使用也比较方便,Android为它提供了完整的套路,和AlertDialog原创 2016-10-09 21:40:08 · 541 阅读 · 0 评论 -
Android中的多媒体音频和视频播放
智能手机的出现使得手机成为一个便携式多媒体播放器。这种看起来随意、理所当然的强大功能在Android中是如何实现的呢?1.音频播放MediaPlayer 装载音频文件:(1)static MediaPlayer create(Content,Uri)从指定Uri来装载音频文件,并返回新创建的MediaPlayer对象。(2)static MediaPlayer create(C原创 2016-10-31 21:03:59 · 1611 阅读 · 0 评论