Android RuntimePermissions运行时权限:单个运行时权限申请简例

Android RuntimePermissions运行时权限:单个运行时权限申请简例Android运行时权限申请的框架结构和步骤比较简单和固定,一般现状代码启动后检查当前的Android SDK版本是否大于等于23,在SDK版本大于等于23时候,才启动运行时权限申请。在过去的版本,直接在AndroidManifest.xml写进去申请即可。在检查当前代码未获得相应权限时候,进而使用标准方式req...
阅读(59) 评论(0)

基于Android TextureView与SurfaceTexture实现相机Camera拍照预览与保存照片

基于Android TextureView与SurfaceTexture实现相机Camera拍照预览与保存照片写一个简单的例子,实现一个常见的开发功能:拍照功能。技术路线:通过TextureView的通道获取SurfaceTexture作为相机的预览,然后通过Camera的take方法把相机抓取的byte字节数据转换为Bitmap,然后存放到手机的存储器上,至此,一个最简单的拍照功能完成。注意,本...
阅读(82) 评论(0)

Android SurfaceView简例

Android SurfaceView简例Android中各的SurfaceView和View有很大的不同,两者应用场景不同。大多数View能做的事情SurfaceView也可以,但是SurfaceView效率更高。Android的View绘制过程由Android系统控制,刷新机制开发者比较难以控制。而SurfaceView支持高频、多线程绘制。SurfaceView不存在是否在Android U...
阅读(80) 评论(0)

Android Bluetooth蓝牙客户端发起对服务端连接建立请求过程(高版本Android兼容)

Android Bluetooth蓝牙客户端发起对服务端连接建立请求过程(高版本Android兼容)本例代码是蓝牙客户端代码,只完成连接建立请求,假定蓝牙服务端设备名是:Android-Phone。兼容高版本Android系统。低版本则无需运行时权限申请。package zhangphil.client; import java.util.UUID; import android.Manife...
阅读(284) 评论(0)

BluetoothAdapter在Android6.0/7.0+以上startDiscovery不能发现蓝牙设备问题

BluetoothAdapter在Android6.0+以上startDiscovery不能发现蓝牙设备问题问题的重要原因之一是Android 6.0+,Android 7.0+的权限问题引起的。在Android 4.0+上运行良好的蓝牙代码,在高版本运行异常。比如BluetoothAdapter的startDiscovery虽然启动了发现蓝牙任务,但是不能发现蓝牙设备。解决问题是针对最新高版本的...
阅读(252) 评论(0)

基于Android DataBinding的InverseBindingMethod改进SeekBar双向绑定(正向/反向)数据绑定

基于Android DataBinding的InverseBindingMethod改进SeekBar双向绑定(正向/反向)数据绑定在前文《使用Android BindingAdapter与InverseBindingAdapter实现SeekBar双向(正向/反向)数据绑定》(链接:http://blog.csdn.net/zhangphil/article/details/77839555 )...
阅读(263) 评论(0)

Android LED数字/电子表字体digital font

Android LED数字/电子表字体digital font先看实现的字体样式:这种类型的字体样式会被一些UI设计用于Android APP中视频,或者广告的倒计时牌,比如常见的Android视频直播软件中右上角的广告倒计时。实现这种字体样式,先导入一个字体包:digital-7.ttf。这个digital-7.ttf文件,我已经上传,下载链接地址:http://download.csdn.ne...
阅读(143) 评论(0)

使用Android BindingAdapter与InverseBindingAdapter实现SeekBar双向(正向/反向)数据绑定

使用Android BindingAdapter与InverseBindingAdapter实现SeekBar双向(正向/反向)数据绑定在我之前写的系列文章中,继续深化Android数据绑定技术的使用。结合常用的SeekBar,实现用Android DataBinding数据绑定技术,设置从数据模型的值修改SeekBar的进度,以及实现常见的SeekBar拖动时候的进度回写到数据model中。也就...
阅读(278) 评论(0)

Android DataBinding数据绑定技术在传统ListView中的使用简例

Android DataBinding数据绑定技术在传统ListView中的使用简例本文展示Android DataBinding数据绑定技术在ListView中的使用的简单小例子。简单起见,在Adapter中没有使用ViewHolder技术,目的是为了以最少最简单的代码说明如何在传统ListView中的应用。本例实行一个简单的功能:ListView中有若干数据条目,当点击任意一条,发生改变,使用...
阅读(356) 评论(0)

Android官方DataBinding(十二):双向绑定之反向绑定的InverseBindingMethods改造和实现

Android官方DataBinding(十二):双向绑定之反向绑定的InverseBindingMethods改造和实现在附录文章十、十一的基础上,使用InverseBindingMethod进行双向绑定和反向绑定操作。以下是完整示例代码。建立model:package zhangphil.test; import android.databinding.BaseObservable; imp...
阅读(186) 评论(0)

Android官方DataBinding(十一):对双向绑定之反向绑定的改进和简化

Android官方DataBinding(十一):对于双向绑定之反向绑定的改进和简化本文接附录十文章,对附录十文章的代码和逻辑进行改进和简化,使得代码更易于阅读和理解,进一步清晰化文章十的下拉刷新实现代码和逻辑。建立model:package zhangphil.test; import android.databinding.BaseObservable; import android.dat...
阅读(270) 评论(0)

Android官方DataBinding(十):双向绑定之基于InverseBindingAdapter的反向绑定

Android官方DataBinding(十):双向绑定之基于InverseBindingAdapter的反向绑定我给出一个简单例子,说明如何基于InverseBindingAdapter进行双向绑定中的反向绑定。以一个经典的开发需求任务:下拉刷新。一般的下拉刷新,头部出现一个滚动的进度显示(ProgressBar)和一些文字提示,当下拉加载完毕后自动消失。我写一个自定义view,继承自Neste...
阅读(270) 评论(0)

Android官方DataBinding(九):反向绑定,View变化结果回写进数据模型中

Android官方DataBinding(九):反向绑定,View变化结果回写进数据模型中Android DataBinding Data Model数据模型的变化,引发View的变化,反过来,如果View的变化,也将导致数据模型(Data Model)的变化。本例给出一个例子,说明这一双向绑定过程。附录文章大部分是单向绑定:数据模型的变化,引起View的变化。那么现在实行一个简单的功能,View...
阅读(168) 评论(0)

最新Android Glide4.0加载Gif图片到ImageView

最新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图片的代码例子。packa...
阅读(325) 评论(0)

Android最新Glide 4.0使用简介

Android最新Glide 4.0使用简介Glide自v3.0到v4.0使用,发生了一些比较大的改变,使用方式和编程模型有了新的变化,这些变化,使得Glide的功能更加强大,性能更加优良,提供了开放的编程接口,便于开发者自定制,以适应自有项目的定制化开发。本例给出一些最新Android Glide 4.0的新变化、新模型的简单使用方式。写一个简单垂直线性布局: <LinearLayout xml...
阅读(210) 评论(0)

Android官方DataBinding(八):Lambda长表达式事件处理

Android官方DataBinding(八):Lambda长表达式事件处理写一个例子说明Android DataBinding如何实现Lambda长表达样式的事件处理。从Android的View的onClick入手。写一个User.java的数据模型:package zhangphil.test; import android.databinding.BaseObservable; impor...
阅读(176) 评论(0)

基于Android DataBinding的BindingAdapter实现密码字符*的回显

基于Android DataBinding的BindingAdapter实现密码字符*的回显作为BindingAdapter使用的简单小练习,记下。本例实现一个简单功能:当在EditText里面输入一个任意字符时候,在下方的TextView实时回显*号。写一个User数据模型:package zhangphil.test; import android.databinding.BaseObser...
阅读(160) 评论(0)

Android官方DataBinding(七):BindingMethods与BindingMethod

Android官方DataBinding(七):BindingMethods与BindingMethodBindingMethods包含若干BindingMethod,BindingMethod是BindingMethods的子集。在附录6的基础上,给出一个例子说明。BindingMethods与BindingMethod用于类的注解,简单的可以理解为,定义xml中定义的属性与某个medthod(...
阅读(179) 评论(0)

Android官方DataBinding(六): @= 操作符进行双向绑定

Android官方DataBinding(六): @= 操作符进行双向绑定在过去的Android开发中,假设一个简单的应用开发需求,垂直线性布局上面一个EditText,下面一个TextView,TexView要实时的回显EditText的显示内容,一般的做法就是给EditText增加一个监听器(addTextChangedListener),这里面构造一个TextWatcher,然后在TextW...
阅读(176) 评论(0)

Android官方DataBinding(五):ObservableMap,ObservableArrayMap

Android官方DataBinding(五):ObservableMap,ObservableArrayMap写一个简单的例子说明ObservableMap,ObservableArrayMap用法。建立一个User.java的数据模型:package zhangphil.test; import android.databinding.BaseObservable; import andro...
阅读(161) 评论(0)
473条 共24页1 2 3 4 5 ... 下一页 尾页
    个人资料
    • 访问:1123129次
    • 积分:15413
    • 等级:
    • 排名:第743名
    • 原创:457篇
    • 转载:13篇
    • 译文:1篇
    • 评论:185条
    联络方式
    邮箱: zhangphil@live.com
    博客专栏