![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Android开发基本知识点
JakeyYe
Android开发
展开
-
ViewTreeObserver视图树观察者
ViewTreeObserver,视图树的观察者,该类是用来监听视图树的,当视图树发生某些改变时,会通知该类中的某些接口。该类中包含多个监听不同事件变化的接口,通过覆写接口中的方法,以在视图树发生改变时做些事件。 ViewTreeObserver是不能实例化的,要通过视图获取,通过View.getViewTreeObserver()获取的。举例应用://onGlobalLayoutLis原创 2017-09-12 10:15:41 · 195 阅读 · 0 评论 -
了解Android的编译器
了解一下Android的编译器并记录下来:Android在4.4以前是使用Dalvik VM的,通过Just In Time(JIT即时编译)来完成编译工作,在Android4.4提供了一种测试版本虚拟机ART(Android Runtime) (在Android5.0以后的系统ART取代了Dalvik),采用Ahead-Of-Time(AOT)的方式进行编译工作。AOT本质上一种静态编译,它相原创 2017-09-12 10:13:54 · 2291 阅读 · 0 评论 -
Android WebView介绍
Android WebView在Android系统中内置了一款高性能webkit内核浏览器,在SDK中封装为一个叫做WebView组件,WebView是基于webkit引擎,展现Web页面的控件。WebView控件功能强大,除了具有一般View的属性和设置外,还可以对url请求、页面加载、渲染、页面交互进行强大的处理。在WebView的开发过程中当你需要使用到一些高级功能可以通过设置WebCh原创 2017-09-12 10:13:58 · 171 阅读 · 0 评论 -
Android之Activity状态的保存和恢复
系统在某些情况下会调用onSaveInstanceState()和onRestoreInstanceState()这两个方法来保存和恢复Activity的状态。 一句话:Activity在“非正常”情况下退出都会调用onSaveInstanceState()方法来保存Activity的状态。 关于系统调用这两个方法的时机参考这里:http://www.cnblogs.com/heiguy原创 2017-09-12 10:14:05 · 300 阅读 · 0 评论 -
Android Parcelable
Android Parcelable 后面再补充 http://www.cnblogs.com/huanyou/p/5594475.html原创 2017-09-12 10:14:11 · 118 阅读 · 0 评论 -
Android 自定义View
Android 自定义View流程中的几个方法解析:onFinishInflate():从布局文件.xml加载完组件后回调onMeasure() :调用该方法负责测量组件大小onSizeChanged() :组件大小发生改变时回调该方法onLayout() :该方法负责确定组件的显示的位置onDraw() :该方法负责将组件在屏幕中画出来 自定义View流程中几个原创 2017-09-12 10:14:16 · 127 阅读 · 0 评论 -
DashPathEffect
DashPathEffect 可以实现以动画的形式画线的效果。通过setPathEffect()方法为画笔Paint对象设置绘制路径的特效。PathEffect pathEffect=new DashPathEffect(new float[] { intervals } , phase ); DashPathEffect分析(感觉下面的两个链接的文章讲得不是很清楚)原创 2017-09-12 10:14:22 · 228 阅读 · 0 评论 -
有关Fragment的知识点
关于判断Fragment是否可见,可以尝试参考使用Fragment中的两个方法: final booleanisHidden()Return true if the fragment has been hidden.final booleanisVisible()Return true if the fragment is currently visible to原创 2017-09-12 10:14:29 · 231 阅读 · 0 评论 -
Android View相关知识点
View 1,View坐标 Left,Right,Top,Bottom,表示view相对于父控件的距离值,是绝对值,绘制完之后就不会再改变的;X,Y表示view左上角相对于父控件的实时坐标值,是会随着移动view而改变的;TranslationX,TranslationY是view左上角相对于父控件的偏移值,初始为0。 2,View的几个重要方法 onMeasure原创 2017-09-12 10:14:49 · 133 阅读 · 0 评论 -
WebView
WebView在Android系统中内置了一款高性能webkit内核浏览器,在SDK中封装为一个叫做WebView组件,WebView是基于webkit引擎,展现Web页面的控件。WebView控件功能强大,除了具有一般View的属性和设置外,还可以对url请求、页面加载、渲染、页面交互进行强大的处理。在WebView的开发过程中当你需要使用到一些高级功能可以通过设置WebChromeClie原创 2017-09-12 10:13:48 · 161 阅读 · 0 评论 -
App开发三种模式
APP开发三种模式现在App开发的模式包含以下三种:Native App 原生开发AppWeb App 网页AppHybrid App 混合原生和Web技术开发的App详细介绍:http://www.ionic.wang/article-index-id-58.htmlhttp://www.jianshu.com/p/e73936e656bc原创 2017-09-12 10:13:43 · 456 阅读 · 0 评论 -
Matrix
记载: MatrixMatrix是Android 提供的一个矩阵工具类,位于"android.graphics.Matrix"包下,它本身不能对图像或View进行变换,但它可以与其他API结合来控制图形,View的变换,如Canvas。Matrix提供了一些方法来控制图片变换:•setTranslate(float dx,float dy):控制Matrix进行位移。•setS原创 2017-09-12 10:13:36 · 248 阅读 · 0 评论 -
ActivityCallcycleCallbacks基本解析
ActivityLifecycleCallbacks是Application的内部接口,接口中定义了关于Activity的所有生命周期的方法,所有的Activity都会在适当的时机回调上面对应时机的方法。我们通过覆写Application类后,在该类中的onCreate()方法通过这句代码registerActivityLifecycleCallbacks(ActivityLifecycleCal原创 2017-09-12 10:15:53 · 285 阅读 · 0 评论 -
AndroidManifest.xml文件中属性记录
android:windowSoftInputMode属性使用:该属性是用来设置活动的主窗口如何与包含屏幕上的软键盘窗口交互的。该属性将会影响两件事情: 1:软键盘的状态; 2:活动的主窗口调整。更多参考 :官方文档中文版原创 2017-09-12 10:15:59 · 154 阅读 · 0 评论 -
Android权限记录
在此记录一下学习过程中用到的权限,以便后期查找(官方文档之权限):原创 2017-09-12 10:16:06 · 204 阅读 · 0 评论 -
Android使用权限
Android使用权限每款Android应用都在访问受限的沙盒中运行。如果应用需要使用其沙盒外的资源或信息,则必需请求相应的权限。可以在清单文件中列出相应的权限,声明应用需要此权限。根据权限的敏感度,系统可能会自动授予权限,或者需要由设备用户对权限请求进行许可。例如,如果应用请求打开手电筒的权限,系统将自动授予,但如果是需要读取用户联系人,系统会要求用户授权。用户需要在安装应用时(运行Andr原创 2017-09-12 10:16:40 · 218 阅读 · 0 评论 -
Intent详细记录
Intent详细记录1,Intent,中文翻译为“意图”,是一个消息传递对象,可以使用它从其他应用组件请求操作,在Android中提供了Intent机制来协助应用间的交互和通讯。Android根据此Intent的描述,负责找到对应的组件,将Intent传递给 调用的组件,并完成组件的调用。Intent不仅可用于应用程序之间,也可用于应用程序内部的Activity/Service之间的交互。因此,原创 2017-09-12 10:16:58 · 765 阅读 · 0 评论 -
android:windowSoftInputMode
android:windowSoftInputModeandroid:windowSoftInputMode属性会影响主窗口与软键盘的交互模式,这个属性会影响两个方面的事情:当窗口有焦点时软键盘是隐藏还是显现;是否减小窗口的大小以便腾出空间放软键盘。具体参考该博客 android:windowSoftInputMode属性详解原创 2017-09-12 10:17:14 · 191 阅读 · 0 评论 -
Activity过渡动画
Activity过渡动画一,直接使用 Activity.overridePendingtransition(int inId,int outId) 方法,可以实现 Activity 之间的过渡动画,但是不包括 Activity 内的视图的过渡动画。详细参考 关于 overridePendingTransition()使用。二,Android 5.X 提供了三种Transition类型,可以实现原创 2017-09-12 10:17:17 · 227 阅读 · 0 评论 -
Android项目中的assets和raw文件夹
直接参考这篇文章 Assets文件夹和raw文件夹的区别原创 2017-09-12 10:17:23 · 274 阅读 · 0 评论 -
关于Activity的onNewIntent方法调用时机
看书看到Activity的启动模式,在某些情况下,启动Activity不会创建新实例,而是直接调用onNewIntent方法,直接使用Activity栈中已存在的Activity实例,遂在此记录关于Activity 的onNewIntent方法的调用时机,自己就不在重新书写了,直接查看别人的博客记录。原创 2017-09-12 10:14:58 · 201 阅读 · 0 评论 -
Activity的启动模式记录
看到一篇详细记录了“Activity的启动模式”的文章,先记录在此,http://www.cnblogs.com/mengdd/archive/2013/06/13/3134380.html原创 2017-09-12 10:15:02 · 114 阅读 · 0 评论 -
Android DisplayMetrics类获取屏幕大小
DisplayMetrics public class DisplayMetrics extends Object java.lang.Object ↳ android.util.DisplayMetrics 是Android提供的记述屏幕的有关信息的一种结构,诸如其尺寸,密度和字体缩放的一般信息。第一种方法:WindowManager wm = (WindowM原创 2017-09-12 10:12:43 · 236 阅读 · 0 评论 -
Android Gradle的使用
说明: 在Android Studio中的Terminal可以直接使用Gradle命令行,不需要配置环境,而想直接在电脑的命令行使用Gradle命令行,则需要配置环境,Window下配置Gradle环境教程在这里http://www.cnblogs.com/pavkoo/p/4164931.html。使用: 配置好环境后,就可以在两个终端使用Gradle命令行了。使用Grad原创 2017-09-12 10:12:54 · 108 阅读 · 0 评论 -
使用XML文件和Java代码控制UI界面
Android推荐使用XML文件设置UI界面,然后用Java代码控制逻辑部分,这体现了MVC思想。 MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法。 一般思路是这样的,但是有些情况还是需要用Java代码设置UI界面,比如原创 2017-09-12 10:13:08 · 974 阅读 · 0 评论 -
Android屏幕适配
Android Drawable资源文件适配/*当屏幕适配android:anyDensity="true"时,应用程序会分别自动加载hdpi,mdpi,xhdpi,xxhdpi,xxxhdpi文件夹中的资源,当为false时,即使我们在hdpi,mdpi,ldpi文件夹下拥有同一种资源,那么应用也不会自动地去相应文件夹下寻找资源,应用程序就会将大小密度转变为中密度,从而加载mdpi中的资源。原创 2017-09-12 10:11:14 · 107 阅读 · 0 评论 -
Android Studio Gradle构建脚本
Gradle是一种依赖管理工具,基于Groovy语言,面向Java应用为主,它抛弃了基于XML的各种繁琐配置,取而代之的是一种基于Groovy的内部领域特定(DSL)语言。构建工具就是对你的项目进行编译,运行,签名,打包,依赖,管理等一系列功能的合集,传统的构建工具有Make,Ant,Maven,lvy等,而Gradle是新一代自动化构建工具,它是一个独立的项目,与AS,Android无关原创 2017-09-12 10:11:10 · 340 阅读 · 0 评论 -
Android Log
android.util.Log常用的方法有以下5个:Log.v(String tag,String message),Log.d(String tag,String message),Log.i(String tag,String message),Log.w(String tag,String message)和Log.e(String tag,String message)。首字母分别对应V原创 2017-09-12 10:11:03 · 144 阅读 · 0 评论 -
Android Support Library控件详细介绍之RecyclerView
RecyclerView控件依赖 compile 'com.android.support:recyclerview-v7:24.1.1'RecyclerView也是容器控件,大多数的效果显示可通过代码来控制,这样更加自由。RecyclerView使用起来很方便因为它提供:1.它为item的定位提供一个layoutmanager2.为item的操作提供一个缺省的animations3.您原创 2017-09-12 10:10:47 · 223 阅读 · 0 评论 -
Android Support Library
The Android Support Library Packet 介绍Support Library文档归类v4 Support LibraryMultidex Support Libraryv7 Support Libraries v7 appcompat library v7 cardview library原创 2017-09-12 10:10:33 · 162 阅读 · 0 评论 -
Android要点记录
1.Toolbar不能上滑隐藏的原因就会使Toolbar上滑不能完全隐藏--> 2,在一个Activity中,setContent(R.layout.content)之后,在这个Activity中通过findViewById(id)找到控件,要注意:这个控件(id)必须在这个R.layout.content XML资源文件中,否则肯定是找不到的。如果引用这个控件会报空指针异常的。原创 2017-09-12 10:12:06 · 92 阅读 · 0 评论 -
Android LayoutParams
LayoutParams继承于Android.View.ViewGroup.LayoutParams,就是布局。 LayoutParams相当于一个Layout的信息包,它封装了Layout的位置、高、宽等信息。假设在屏幕上一块区域是由一个Layout占领的,如果将一个View添加到一个Layout中,最好告诉Layout用户期望的布局方式,也就是将一个认可的layoutParams传递进原创 2017-09-12 10:12:01 · 109 阅读 · 0 评论 -
Notification
Notification作为Android的通知有三种形式,基本的Notification,折叠式Notification和悬挂式Notification。前两种都是设置builder.setContentIntent(intent),而第三种不需要设置setContentIntent(),而是设置builder.setFullScreenIntent(intent,true),还原创 2017-09-12 10:11:47 · 198 阅读 · 0 评论 -
获取手机网络状态之ConnectivityManager
ConnectivityManager是网络连接管理器,获取手机有关的网络状态,都是通过它获取的。它主要用于查询网络状态并在网络发生改变时发生状态变化通知。这个类主要负责下列的四个方面:1,监控网络状态(包括WIFI,GPRS等);2,当网络连接改变时发生广播Intent;3,当一种网络断开时,试图连接到另一种网络进行故障处理;4,提供一系列接口让应用程序查询可获得的网络粗粒度和细粒度状态原创 2017-09-12 10:15:13 · 375 阅读 · 0 评论 -
Android的Fragment的自定义转场动画
Fragment间转场可以使用setTransition()来设置系统默认的转场动画,也可以使用setCustomAnimations()方法来自定义转场动画。getFragmentManager().beginTransaction() //An optional name for this back stack state, or null.addToBac原创 2017-09-12 10:15:20 · 741 阅读 · 0 评论 -
Android样式
Android的样式开发,包含了不少内容,不可能全记得,所以还是需要先记载下来,后面不记得了再直接查阅。drawabe目录下的xml文件,关于selector标签的xml version="1.0" encoding="utf-8"?>selector xmlns:android="http://schemas.android.com/apk/res/android"> androi原创 2017-09-12 10:15:26 · 121 阅读 · 0 评论 -
Android Activity/Fragment间的数据传递
Activity间的数据传递举例:MainActivity是已经打开的Activity,在这个界面打开第二个Activity,SecondActivtiy,如果是直接通过startActivity()方法打开的,则不能通过回调方法进行数据传递,但通过startActivityForResult()打开SecondActivity的话,则在SecondActivity结束时,会回调MainActi原创 2017-09-12 10:15:33 · 120 阅读 · 0 评论 -
Android事件处理
Android提供了两种事件处理机制: 基于监听的事件处理(委派式事件处理) 基于回调的事件处理 当某个事件源被触发时(发生事件活动),Android系统最先触发的是绑定在该事件源上的事件监听器,(如果继续传播的话)接着才会触发该事件源提供的事件回调方法。Android基于监听的事件处理的处理模型如下: 事件源,事件监听器,注册事件监听器原创 2017-09-12 10:11:19 · 144 阅读 · 0 评论 -
Android Service与Thread的区别
Android Service,后台,Android的后台就是指,它的运行是完全不依赖UI的。即使Activity被销毁,或者程序被关闭,只要进程还在,Service就可以继续运行。比如说一些应用程序,始终需要与服务器之间始终保持连接,就可以使用Service来实现。而Serview就是运行在主线程中的,所有我们需要在Service中再创建一个子线程,然后在这里去处理耗时逻辑,否则会阻塞主线程的运原创 2017-09-12 10:11:23 · 155 阅读 · 0 评论 -
Android Drawable资源
Android实现应用d动画效果:比如App第一次打开的开始动画等有两种:GIF动画和代码实现。第一种:借助于Gif制作工具软件实现。一般是和第三方开源的GifView(https://github.com/Cutta/GifView)控件配合使用。特点是:简单,易上手。第二种:借助于Android自带动画类,或者第三方动画框架实现,如nineoldandroids。特点是:灵活性较高原创 2017-09-12 10:11:30 · 220 阅读 · 0 评论