
Android入门与基础
文章平均质量分 88
子云心
这个作者很懒,什么都没留下…
展开
-
Android中线程形态AsyncTask、HandlerThread 和 IntentService简介
上一节《Android中线程Thread的使用》,我们介绍了Java中Thread的一些基本的使用,在Android中除了Thread外,扮演线程角色的还有:底层用到线程池的AsyncTask以及底层封装线程的HandlerThread和IntentService,等。AsyncTask定义Android为了降低开发难度,提供了AsyncTask抽象泛型类,它是一种轻量级的异步任务类,...原创 2017-03-08 11:53:15 · 2297 阅读 · 0 评论 -
Android控件 - TextView、Button、EditText、CompoundButton、CheckBox简介
TextViewTextView类是View的直接子类,用于单纯地显示一行或多行静态文本的视图。它继承View所有XML属性,并有着自己的XML属性。在XM布局中常用的属性: 属性 说明 android:autoLink 设置文本超链接样式,并点击跳向链接,值:none 不匹配任何类型的文字(默认); web 匹配URL地址,单击后打开浏览器显示地址;email 匹配邮箱地址,单击后打原创 2016-08-22 14:12:53 · 1593 阅读 · 0 评论 -
Android里Activity的启动模式
Activity的LaunchMode启动模式分类目前有四种启动模式:standard、singleTop、singleTask、singleInstance。standard标准模式这也是系统的默认模式。每次启动一个Activity都会重新创建一个新的实例,不管这个实例是否已经存在。被创建的实例的生命周期符合典型情况下Activity的生命周期。这是一种典型的多实例实现,一个任务原创 2017-02-15 13:28:39 · 412 阅读 · 0 评论 -
Android里Fragment的相关知识(二)
我们在上一篇文章《Android里Fragment的相关知识(一)》中介绍了Fragment的存在意义以及基本使用。本篇文章将进一步介绍Fragment的其它一些相关知识。Fragment与Actvitiy之间的交互一般情况下,因为要考虑Fragment的复用性,所以都要尽量地减少Fragment与Actvitity的耦合。至于两个Fragment之间直接交互就更不应该了,因为这样会使得代原创 2017-04-05 19:28:02 · 355 阅读 · 0 评论 -
Android里Fragment的相关知识(一)
定义Android在3.0后引入了Fragment,我们唤它叫碎片或片段。当初主要是为了给大屏幕(如平板电脑)上更加动态和灵活的UI设计提供支持。例如,新闻应用可以使用一个Fragment在左侧显示文章列表,使用另一个Fragment在右侧显示文章,两个Fragment并排显示在一个Activity中,每个Fragment都具有自己的一套生命周期回调方法,并各自处理自己的用户输入事件。因此,用...原创 2017-03-29 19:52:54 · 571 阅读 · 0 评论 -
Android中小部件的使用
定义Android中提供了AppWidgetProvider类为实现桌面小部件,AppWidgetProvider继承了BroadcastReceiver,所以它本质上是一个广播。常用方法AppWidgetProvider类有几个常用的重要方法,它们会自动地在广播接收后的onReceive方法里在特定的条件下被调用,这些方法有:onEnable ...原创 2017-04-18 20:52:29 · 1374 阅读 · 1 评论 -
Android中通知栏的使用
1 简介通知栏应该属于Android最常用的功能之一。目前几乎你认识的APP都会见过它们弹出的通知栏。通知栏的使用其实并不难,但你有没有感觉到随着整个Android的迭代会出现很多种用法,新版本的通知栏API无法兼容老系统这就会是一个很头疼的问题。本篇博文将会通过回顾历史使用情况和通用代码情况以及自定义通知栏来解析通知栏的各种使用方法。2 系统默认通知栏使用2.1 Android 3....原创 2017-04-17 21:28:31 · 2892 阅读 · 0 评论 -
Android中注解(Support Annotations)的使用
简介注解(Annotation),也叫元数据。一种代码级别的说明。它是JDK1.5及以后版本引入的一个特性,与类、接口、枚举是在同一个层次。它可以声明在包、类、字段、方法、局部变量、方法参数等的前面,用来对这些元素进行说明。善用注解可提高您的代码质量和效率。JDK自带的注解@Override-----------------------表示当前方法覆盖了父类的方法@Deprecat...原创 2017-07-12 19:42:19 · 1341 阅读 · 0 评论 -
Android中获取View的宽/高的时机
实际上在onCreate、onStart、onResume中均无法正确得到某个View的宽/高信息,这是因为View的measure过程和Activity的生命周期方法不是同步执行的。如果View还没测量完毕,那么获得宽/高就是0。下面列出获得View宽/高的机时: Activity/View#onWindowFocusChangedonWindowFocusChanged这个方法的含原创 2017-09-20 20:30:50 · 1017 阅读 · 0 评论 -
Adnroid版本简史
自Android首次发布以来,它已历经了相当多数量的更新版本。在程序员日常开发中也经常会碰到针对版本的代码适配,一般会使用代码:Build.VERSION.SDK_INT == Build.VERSION_CODES.XXX而这里的XXX便是API level对应的一个变量。下面列出Android的不同版本的一些信息: 版本 发布日期 .........原创 2016-08-22 13:39:16 · 955 阅读 · 1 评论 -
认识Android中Window(一) 之 悬浮窗的使用
简介我们在日常开发中,直接接触Window的机会并不多,充其量就是在使用悬浮窗这事情上。其实,Android中所有的视图呈现都是通过Window做到的,也就是说,除了悬浮窗外,像Activity、Dialog、Toast都是通过Window来呈现的。所以可以说,Window是View的直接管理者。要创建Window就要通过WindowManager类,它是外界访问Window的入口。今天我们就...原创 2018-06-30 18:35:12 · 6667 阅读 · 0 评论 -
Android中AIDL的使用(一) 之 AIDL经典示例
在Android开发中IPC(Inter-Process Communication的缩写)多进程通信的使用场景很多。一般地由于某些功能模块需要特殊原因运行在单独的进程中,又或者为了加大一个应用可使用的内存,因为Android对单个应用使用的最大内存是有限制的,又或者需要做一些非常耗内存而又不好回收的事情,在事情完成后直接结束掉进程,等。开启多进程模式很简单,就是给四大组件指定android:pr...原创 2018-10-15 17:39:33 · 2159 阅读 · 0 评论 -
Android中线程Thread的使用
定义主线程是指进程拥有的线程,或叫UI线程,Java中默认情况下一个进程只有一个线程,这个线程就是主线程。主线程不能执行耗时的任务,所以在一些耗时处理时,就得使用子线程。Android沿用了Java的线程模型,从Android3.0开始系统要求网络访问也必须在子线程中进行,否则网络访问将会失败并抛出NetworkOnMainThreadException异常。在Android里如果主线程被执行...原创 2017-03-06 21:20:42 · 6988 阅读 · 1 评论 -
Android使用SharedPreferences进行配置的读写
定义SharedPreferences是Android平台上一个轻量级的存储类,用来保存应用的一些常用配置。它类似Windows系统中的ini配置文件,SharedPreferences的表现方式是一个XML文件,它保存于/data/data//shared_prefs目录下,通过在使用中定义的多种权限来区分访问的限制。操作模式SharedPreferences数据的四种操作模式:原创 2017-03-02 14:46:24 · 888 阅读 · 2 评论 -
Android控件 - View 简介
View类是Android的一个非常重要的超类,它是Android里所有与用户交互的控件的父类,包括Widget类的交互UI控件(按钮、文本框等)和ViewGroup类布局控件。在XM布局中常用的属性: 属性 说明 android:alpha View的透明度,取值范围:0(完全透明)到1(完全不透明) android:background View的背景,此值可以是PNG图引原创 2016-08-22 14:12:22 · 4457 阅读 · 0 评论 -
Android控件 - ViewGroup、ViewGroup.LayoutParams、ViewGroup.MarginLayoutParams简介
ViewGroupViewGroup类派生于View类,它是一种可以包含其他视图特殊的布局和视图的容器。它也定义了viewgroup.layoutparams类作为基类的布局参数。子类有:LinearLayout、RelativeLayout,等。在XM布局中常用的属性: 属性 说明 addStatesFromChildren 定义布局是否应用子布局的背景 alwaysDrawnW原创 2016-08-22 14:13:15 · 5290 阅读 · 0 评论 -
Android控件 - LinearLayout 简介
LinearLayoutLinearLayout类继承于ViewGroup类,它是线性布局控件。即以单行或单列的形式排列视图。子视图可以水平或垂直地排列。在XM布局中常用的属性: 属性 说明 baselineAligned 是否允许用户调整它内容的基线,默认true baselineAlignedChildIndex 当一个线性布局与另一个布局是按基线对齐的一部分,它可以指定其原创 2016-08-22 14:13:57 · 742 阅读 · 0 评论 -
Android控件 - RelativeLayout 简介
RelativeLayoutRelativeLayout类继承于ViewGroup类,它是相对布局控件。即用于指定子视图相对于彼此之间是如何定位的。在XM布局中常用的属性: 属性 说明 gravity 针对自身视图如何定位当前内容位置,值:top、bottom、left、right、center_vertical、fill_vertical、center_horizontal、fill原创 2016-08-22 14:14:18 · 687 阅读 · 0 评论 -
Android控件 - ListView 简介
ListView是显示垂直可滚动的列表项视图,列表项的来源可以使用一个适配Adapter,Adapter可将内容从源(如数组或数据库)转换成视图放在列表中。ListView类的继承关系java.lang.Object ->android.view.View ->android.view.ViewGroup ->andr原创 2016-10-21 17:53:28 · 2289 阅读 · 0 评论 -
Android控件 – ListView的使用(一)– 使用Adapter绑定数据
ListView是Android最常使用的控件之一,要使用ListView要先了解适配器Adapter。适配器是一个连接数据和AdapterView(ListView就是一个典型的AdapterView)的桥梁,通过它能有效地实现数据与AdapterView的分离设置,使AdapterView与数据的绑定更加简便,修改更加方便。Android中常用的几个Adapter有:Ada原创 2016-10-24 13:07:00 · 3128 阅读 · 0 评论 -
Android控件 – ListView的使用(二)– addHeaderView、addFooterView的使用与滑动优化
addHeaderView 和 addFooterView的使用ListView除了可以使用Adapter绑定数据外,还可以通过addHeaderView()和addFooterView()方法给ListView的上方或下方添加其他View,他们可以多次添加。例如addHeaderView()最先添加的会在最上方,然后按先后顺序由上到下罗列,此时ListView的position=0的位置对应原创 2016-11-16 14:50:07 · 1563 阅读 · 0 评论 -
Android中度量单位的使用和关系
单位说明dp与密度无关的像素(density-independent pixel)。1pd相当于160dpi的屏幕上的1像素。当在布局中指定视图尺寸时,推荐将dp作为度量单位。160dpi是Android假定的基准密度。当指的是密度无关的像素时,可以使用dp或原创 2016-11-16 15:32:14 · 699 阅读 · 0 评论 -
Android里Activity和Activity的生命周期
Activity是什么Activity是Android组件中最基本也是最为常见用的四大组件(Activity,Service服务,Content Provider内容提供者,BroadcastReceiver广播接收器)之一。Activity是一个应用程序组件,提供一个屏幕,用户可以用来交互为了完成某项任务。Activity中所有操作都与用户密切相关,是一个负责与用户交互的组件,可以通原创 2017-02-08 13:28:08 · 632 阅读 · 0 评论 -
Android里Activity的IntentFilter匹配规则
Activity的启动方式显式启动显示方式就是在通过intent启动Activity时指定了Activity的包名和类名,而且不管启动本应用的Activity还是启动其他应用的Actitity例如:要启动的Activity是同一个项目之中:Intent intent = new Intent(context, MyActitity.class);startService(int...原创 2017-02-16 19:30:08 · 7102 阅读 · 0 评论 -
Android里服务Service的使用
定义Service作为Android四大组件之一,在我们实际开发中是扮演着非常重要的角色。很多Android初学者都会有疑惑,究竟Service和Thread有什么区别,使用场景是什么?其实很简单,Thread大家应该不陌生,就是用于执行一些耗时操作时使用主线程不阻塞,或者用于当前界面中后台执行一个任务。Thread是依赖于Activity的,即依赖于APP的界面。而Service是一种计算型...原创 2017-02-17 19:37:57 · 744 阅读 · 1 评论 -
Android里广播Broadcast的使用
定义在Android中,广播Broadcast也是四大组件之一,它是一种广泛运用在应用程序内部或不同应用程序之间传输信息的机制。比如像一些垃圾短信骚扰电话拦截程序,他们会在接收到短信和拔入电话时,接收系统这两个广播,然后在系统做出反应前先做相应用过滤逻辑处理。除了系统广播外,我们也可以自定义一些广播用来传输数据和接收数据,又或者在Service(如不清楚Service的使用,请看《Androi...原创 2017-02-21 11:42:26 · 753 阅读 · 0 评论 -
Android里内容提供者ContentProvider的使用
定义在Android中,ContentProvider也是四大组件之一,它被翻译成内容提供者。如果在开发中需要实现跨包数据共享,那就需要使用ContentProvider,它存储数据的方式和使用它的应用程序无关,因为它为存储和获取数据提供统一的接口。Android附带了许多有用的ContentProvider,包括:browser 存储诸如浏览器书...原创 2017-03-02 10:43:14 · 707 阅读 · 0 评论