暂无个人介绍
Android DVM(Dalvik Virtual Machine)和Java JVM(Java Virtual Machine)以及ART(Android RunTime)概述 JVM,Java Virtual Machine,Java虚拟机,JVM是基于栈的虚拟机,JVM栈是内存中连续的存储空间。
运行结果:
package zhangphil.cache; import android.app.ListActivity; import android.
package zhangphil.cache; import android.app.ListActivity; import android.
package zhangphil.cache; import android.graphics.Bitmap; import android.
package zhangphil.sensor; import android.content.Context; import android.
package zhangphil.sensor; import android.content.Context; import android.
package zhangphil.sensor; import android.content.Context; import android.
package zhangphil.sensor; import android.content.Context; import android.
package zhangphil.sensor; import android.content.Context; import android.
package zhangphil.sensor; import android.content.Context; import android.
package zhangphil.sensor; import android.content.Context; import android.
Android RuntimePermissions运行时权限:批量权限申请 绝大多数情况一个APP不可能只有单个权限,往往需要运行时批量申请n多个权限。
Android RuntimePermissions运行时权限:单个运行时权限申请简例 Android运行时权限申请的框架结构和步骤比较简单和固定,一般现状代码启动后检查当前的Android SDK版本是否大于等于23,在SDK版本大于等于23时候,才启动运行时权限申请。
基于Android TextureView与SurfaceTexture实现相机Camera拍照预览与保存照片 写一个简单的例子,实现一个常见的开发功能:拍照功能。
Android SurfaceView简例 Android中各的SurfaceView和View有很大的不同,两者应用场景不同。
Android Bluetooth蓝牙客户端发起对服务端连接建立请求过程(高版本Android兼容) 本例代码是蓝牙客户端代码,只完成连接建立请求,假定蓝牙服务端设备名是:Android-Phone。
BluetoothAdapter在Android6.0+以上startDiscovery不能发现蓝牙设备问题 问题的重要原因之一是Android 6.0+,Android 7.0+的权限问题引起的。
基于Android DataBinding的InverseBindingMethod改进SeekBar双向绑定(正向/反向)数据绑定 在前文《使用Android BindingAdapter与InverseBindingAdapter实现SeekBar双向(正向/反向)数据绑定》(链接:http://blog.csdn.net/zhangphil/article/details/77839555 )基础上,用InverseBindingMethod改进双向绑定实现方案。
Android LED数字/电子表字体digital font 先看实现的字体样式: 这种类型的字体样式会被一些UI设计用于Android APP中视频,或者广告的倒计时牌,比如常见的Android视频直播软件中右上角的广告倒计时。
使用Android BindingAdapter与InverseBindingAdapter实现SeekBar双向(正向/反向)数据绑定 在我之前写的系列文章中,继续深化Android数据绑定技术的使用。
Android DataBinding数据绑定技术在传统ListView中的使用简例 本文展示Android DataBinding数据绑定技术在ListView中的使用的简单小例子。
Android官方DataBinding(十二):双向绑定之反向绑定的InverseBindingMethods改造和实现 在附录文章十、十一的基础上,使用InverseBindingMethod进行双向绑定和反向绑定操作。
Android官方DataBinding(十一):对于双向绑定之反向绑定的改进和简化 本文接附录十文章,对附录十文章的代码和逻辑进行改进和简化,使得代码更易于阅读和理解,进一步清晰化文章十的下拉刷新实现代码和逻辑。
Android官方DataBinding(十):双向绑定之基于InverseBindingAdapter的反向绑定 我给出一个简单例子,说明如何基于InverseBindingAdapter进行双向绑定中的反向绑定。
Android官方DataBinding(九):反向绑定,View变化结果回写进数据模型中 Android DataBinding Data Model数据模型的变化,引发View的变化,反过来,如果View的变化,也将导致数据模型(Data Model)的变化。
最新Android Glide4.0加载Gif图片到ImageView 在我过去的文章里面,介绍了旧的Glide 3.0+的加载Gif图片方式(见文章:http://blog.csdn.net/zhangphil/article/details/45561983 ),现在Glide 4.0相较于Glide 3.0+发生了很大变化,现在给出一个新版Glide 4.0加载Gif图片的代码例子。
Android最新Glide 4.0使用简介 Glide自v3.0到v4.0使用,发生了一些比较大的改变,使用方式和编程模型有了新的变化,这些变化,使得Glide的功能更加强大,性能更加优良,提供了开放的编程接口,便于开发者自定制,以适应自有项目的定制化开发。
Android官方DataBinding(八):Lambda长表达式事件处理 写一个例子说明Android DataBinding如何实现Lambda长表达样式的事件处理。
基于Android DataBinding的BindingAdapter实现密码字符*的回显 作为BindingAdapter使用的简单小练习,记下。
Android官方DataBinding(七):BindingMethods与BindingMethod BindingMethods包含若干BindingMethod,BindingMethod是BindingMethods的子集。
Android官方DataBinding(六): @= 操作符进行双向绑定 在过去的Android开发中,假设一个简单的应用开发需求,垂直线性布局上面一个EditText,下面一个TextView,TexView要实时的回显EditText的显示内容,一般的做法就是给EditText增加一个监听器(addTextChangedListener),这里面构造一个TextWatcher,然后在TextWatcher里面把EditText的内容实时更新回显到TextView中。
Android官方DataBinding(五):ObservableMap,ObservableArrayMap 写一个简单的例子说明ObservableMap,ObservableArrayMap用法。
Android官方DataBinding(四):BindingAdapter 简单初识BindingAdapter,写一个简单的例子,说明BindingAdapter的工作机制。
Android官方DataBinding(三):RecyclerView 使用ViewDataBinding更新数据 本例基于Android官方DataBinding,在RecyclerView上实现一个简单需求:点击一个button按钮,增加一个数据元素,并更新的view上。
Android官方DataBinding(二):动态数据更新notifyPropertyChanged 附录文章1使用了最简单的Android官方DataBinding技术,所以写的例子以简单明了能说明问题即可。
Android官方DataBinding简例(一) (1)使用谷歌Android官方DataBinding,需要首先在module的gradle里面启用:android { ... dataBinding { enabled = true } ... } 配置完成后记得update gradle,刷新工程。
Android CoordinatorLayout与NestedScrollView基于Behavior几行代码实现底部View滑入滑出 在CoordinatorLayout的Behavior出现之前,如果实现底部的View的滑入滑出,需要写不少代码,且实现起来比较繁琐,现在通过CoordinatorLayout的Behavior,寥寥几行代码就能简洁优雅的实现。
Android旋转动画rotate动画,xml配置set实现 作为快速备忘查询,写到这里记下。 在xml配置动画所需的set设置资源,然后上层Java代码以最少的代码实现一个匀速旋转的动画,这种开发场景在一些加载动画中比较常见,比如视频缓冲时候的加载动画。
Google I/O Android官方新体系架构之:Lifecycle Google官方在 I/O大会中引入一些列Android新的体系架构内容,其中有一个是Android的Lifecycle。
Android基于Window.ID_ANDROID_CONTENT给定id添加子View 这一技术特点在一些视频播放器中比较有用。
Android Studio project之module移除导致工具编译错误 问题现象:一般提示为 Gradle failed: xxxxxx already disposed 解决方案:第一步:Build -> Cle...
Android设备屏幕锁定/解锁/屏幕点亮监听 Android屏幕锁定,解锁,开屏比较常用,故抽象成一个公共的DeviceScreenListener。
public static void saveBitmapAsPng(Bitmap bmp,File f) { try { FileOutputStream out = new FileOutputStream(f); bmp.
Android横竖屏切换View设置不同尺寸或等比例缩放的自定义View的onMeasure解决方案(2) 附录文章1以xml布局文件方式实现了一个view在横竖屏切换时候的大小尺寸缩放,实现这种需求,也可以使用自定义View的onMeasure方法实现。
Android横竖屏切换View设置不同尺寸或等比例缩放的XML解决方案 在一些应用中,涉及到横竖屏切换,View要切换成不同大小比例尺寸。
Android弹幕实现:基于B站弹幕开源系统(7)QQ、微信聊天气泡样式的弹幕 在附录文章得基础上,改进普通文本弹幕,实现一种特殊效果的文本弹幕,像QQ、微信一样的带有气泡背景的弹幕。
Android弹幕实现:基于B站弹幕开源系统(6)带用户头像且头像从网络加载 在附录文章1,2,3,4,5基础上,实现一种特殊弹幕效果,实现弹幕带发表者头像。
RxJava2 / RxAndroid2操作符interval:每隔若干时间发射信号 Interval每隔一定时间发射一个整数,从0开始,例如:package zhangphil.
RxJava2 / RxAndroid2操作符distinct与distinctUntilChanged去重结果异同 代码例如:package zhangphil.