Android
HL是限量版
我不曾向往一张未经沧桑的面庞,但会仰慕一颗赤诚热烈的少年心
展开
-
一分钟教你学会-Android Service、Intent Service
服务详解Android的四大组件之一,服务是长期运行在后台的应用程序组件。服务不是进程,也不是线程,它和应用程序在同一个进程中,服务中不能做耗时操作,运行在主线程中。主要应用与后台播放音乐,定位服务,每隔一定时间和服务器进行交互。注意服务需要在注册列表中注册! 一,定义安卓的四大组件之一,是一个可以在后台执行长时间运行操作而不使用用户界面的应用组件。服务能够被其他组件启动,绑定,交...原创 2018-10-03 09:12:14 · 265 阅读 · 0 评论 -
【详细】探究startService()和bindService()区别
1、从生命周期来看startService()会调用service的onCreate()、onStartCommand(),调用stopService()后就执行service的onDestroy()bindService()则会调用service的onCreate()、onBind(),调用unBindService()后就执行service的onDestroy()并且当service...原创 2019-01-29 15:28:03 · 782 阅读 · 0 评论 -
安卓项目总结
1 . recycleview 限定item数量 我们有时候会遇到这类需求,要求某个列表,当列表里面当数量超过10条后,就显示前10条数据。如果不到10条就显示全部数据。对于一个recycleview,我们可以对传入adapter的数据源进行设置。在Java里面,对于集合list,我们可以通过list.subList(X1 , X2 )来设置list的长度。 newlist ...原创 2019-01-10 14:25:42 · 393 阅读 · 0 评论 -
一分钟实现动态模糊效果
现在,越来越多的App里面使用了模糊效果,尤其是动效效果中尤为常见。 对于这类需求,Android推出RenderScript。测试表明,使用RenderScript的渲染效率和使用C/C++不相上下,但是使用RenderScript却比使用JNI简单地多!同时,Android团队提供了RenderScript的支持库,使得在低版本的Android平台上也能使用。...原创 2018-11-27 16:22:10 · 1947 阅读 · 0 评论 -
【详细】长按APP图标弹出快捷方式,ShortCut功能实现
Shortcuts介绍Android7.1(API Level 25)及以上系统可以自定义Shortcuts,通过在桌面上长按App Icon弹出Shortcut列表,点击某个shortcut可使用户快捷得打开App里常用的或推荐的任务。国内各个厂商基本上在安卓8.0上集成了该功能。见下图 1.1 Shortcuts的简单作用每个Shortcut可以关联一个或多个intents,...原创 2018-11-14 18:10:52 · 11468 阅读 · 8 评论 -
【详细】Spinner实现三级联动功能
1. 需求分析 在实际开发中,我们经常遇到要求省市县三级联动的下拉框需求,如下图,针对这类需求,我们常用Spinner控件去实现。当用户选择Spinner控件的时候,可以提供一个下拉列表将所有可选的项列出来。供用户选择。 今天,我就研究一下怎么实现三级联动的需求。2. 实现流程在布局文件中添加Spinner控件在Acitvity中获取控件给Spinne...原创 2018-11-10 19:38:57 · 2754 阅读 · 0 评论 -
客户端多个异常文案显示方法
在实际开发中,针对某一界面,我们有不同的显示需求:以app中的消息列表为例,在网络有问题的情况下,我们界面显示网络出现问题;在网络正常,但是没有消息数据的情况下,我们要求显示,没有消息。这是常规的异常显示案例。 但是,有时候为了减少Layout数量,我们不得不将一些异常情况都写在一个界面。添加异常布局方法1. include异常布局<include ...原创 2018-11-04 19:40:10 · 1149 阅读 · 0 评论 -
【详细】Android 判断网络状态,实现app自动静音
在实际应用中,我们不希望在公司内网环境下,打开游戏就显示较大的声音,进而影响其他同事办公环境。因此,就需要让app变得智能,让app可以根据使用者当前网络状态,自动进行静音等操作。本次内容分为两部分:1. 识别网络环境 2. 实现app自动静音。自动静音 首先是实现自动静音功能。/** * 实现静音功能 */private void sile...原创 2018-11-04 19:26:09 · 1346 阅读 · 0 评论 -
Glide缓存- 图片URL带token问题
部门项目的图片资源都是存放在阿里云上面的,最近项目重构,领导决定将内部图片和资料存放在360云上,因此部分支持换成了360云。而360云为了对图片资源进行保护,会在图片的URL地址的基础之上再加上一个令牌参数也就是说,一张图片的URL地址可能会是如下格式:http://url.com/image.jpg?token=d9caa6e02c990b0a 而使...原创 2018-11-04 18:52:02 · 2139 阅读 · 0 评论 -
Android一分钟教你会-传递序列化参数
传递序列化参数在ReceiveRedPacketAnimationActivity.java中,我们通过getSerializableExtra()方法来获取参数传递过来的序列化对象// 这是接收参数private void initBundle() { eventEveryWhereCanShowBean = (EventEveryWhereCanShowBean) getI...原创 2018-10-10 14:43:07 · 505 阅读 · 0 评论 -
Android 自定义LayoutManager
Android 自定义LayoutManager实现自定义LayoutManager主要的4个步骤: 指定默认的LayoutParams 计算每个ItemView的位置 添加滑动事件 实现缓存其中,主要在onLayoutChildern() 这个回调方法中实现主要功能。指定默认的 LayoutParams 当你继承LayoutManager之后,必须要重写g...原创 2018-10-16 16:04:56 · 1144 阅读 · 0 评论 -
TextureView 和 Surfaceview 的区别
为什么用surfaceTexture不用surface来展示呢?ICS之前都用的是surfaceview来展示video或者openGL的内容,surfacaview render在surface上,textureview render在surfaceTexture,textureview和surfaceview 这两者有什么区别呢?surfaceview跟应用的视窗不是同一个视窗,它...原创 2018-10-07 22:21:17 · 2753 阅读 · 0 评论 -
手把手教你-Android 广播机制
一,概述广播(广播)机制用于进程/线程间通信,因此在我们应用程序内发出的广播,其他的应用程序应该也是可以收到的。广播分为广播发送和广播接收两个过程,其中广播接收者广播接收器便是Android的四大组件之一。 广播接收器(广播接收)分为两类:静态广播接收者:通过AndroidManifest.xml中的标签来申明的广播接收器。动态广播接收者:通过AMS.registerRec...原创 2018-09-28 19:37:18 · 241 阅读 · 0 评论 -
Android handle的难点问题及解答
1. 消息的使用new Handler().postDelayed(new Runnable() { @Override public void run() { finish(); overridePendingTransition(R.anim.abc_fade_in, R.anim.abc_fade_out); }}, 50...原创 2018-10-06 20:40:19 · 332 阅读 · 0 评论 -
Android P的新特性
Android P的新特性室内WIFI定位Android P增加了对RTT Wi-Fi协议的支持,以此作为室内定位的基础。 在支持硬件支持的Android P设备上,开启定位并且打开WIFI扫描后就可以使用该功能进行定位。应用可以测量与附近支持RTT的Wi-Fi接入点(AP)的距离。设备必须启用位置并启用Wi-Fi扫描(在设置>位置下)。使用这个功能不会连接到WIFI,而且为了保持隐...原创 2018-10-06 18:18:40 · 315 阅读 · 0 评论 -
Android嵌套滑动机制
概览实现嵌套滑动有三种方案:纯事件拦截与派发方案 基于NestingScroll机制的实现方案 基于CoordinatorLayout与Behavior的实现方案第一种方案:灵活性最高,也最繁琐。因为事件的拦截是一锤子买卖,谁拦截了事件,当前手势接下来的事件都会交给拦截者来处理,除非等到下一次Down事件触发。这很不方便多个View对同一个事件进行处理。第二种方案:其实就是对原始...原创 2018-10-04 15:09:50 · 430 阅读 · 0 评论 -
ViewPager结合Fragment
viewPager是我们项目中经常需要用到的控件,而这种控件也往往和Fragment碎片一起使用,最近业务有涉及这部分的需求,特此学习记录一下。首先是ViewPager的组成:布局文件中的Viewpager(用于绑定Fragment)、 List集合存放Fragment、Viewpager的适配器其次是流程:1、List中添加fragment 2、adapter获取Fragment管...原创 2019-03-19 20:32:19 · 554 阅读 · 0 评论