先贴上设置虚拟按键的代码: public void setHideVirtualKey(Window window){ //保持布局状态 int uiOptions = View.SYSTEM_UI_FLAG_LAYOU…
分类:Android
DatePicker&TimePicker
一,课程内容 1, 介绍DatePicker和TimePicker两种实现动态输入日期和时间的功能; 2,介绍DatePickerDialog和TimePickerDialog两种实现动态输入日期和时间的 对话框 3,介…
【项目优化】App启动优化实战
前言 某次在开发阶段,发现App启动过程中既然有3-4s的白屏时间,瞬间慌了,到底干了些什么??? 分析 启动时间统计 # 完整命令 adb [-d|-e|-s <serialNumber>] shell a…
从源码分析Android Handler 消息机制
看了Danny老师的视频,从源码层学习了一下Handler消息机制中几个重要的类(Handler、MessageQueue、Looper和Message),从之前的一知半解到现在终于弄明白这个Handler消息机制到底是…
如何编写高效的Android代码
现代的手持设备,与其说是电话,更像一台拿在手中的电脑。但是,即使是“最快”的手持设备,其性能也赶不上一台普通的台式电脑。 这就是为什么我们在书写Android应用程序的时候要格外关注效率。这些设备并没有那么快,并且受电池…
【Android】配置lambda与解决butterknife不兼容问题
使用第三方Java8兼容插件解决lambda与butterknife的兼容问题,即使项目中没有使用到butterknife,也推荐使用第三方兼容插件 配置 工程的build.gradle中添加 dependencies …
Flutter获取Android/iOS设备信息
我们在进行各个系统的原生开发时,都有对应的方法获取设备信息,那么在使用Flutter时如何获取设备相关的相关信息呢? 我们本文就来介绍一个Flutter插件: Flutter Device Info 下面我们来逐步介绍如…
为什么 Android 要采用 Binder 作为 IPC 机制?
有网友问到:“Android另起炉灶开发了Binder驱动,而没有采用已有的方案,而D-Bus这样的方案也可以实现Binder的功能,是出于什么原因和什么考虑?安全性?性能?” 在开始回答前,先简单概括性地说说 Linu…
工作日记第二篇(仿美团二级列表)
其实这个控件真的本人很早很早之前就不再使用了,因为当时的网上的demo实在是太乱了,对于当时小白的我存在很大的难度来阅读和集成。 现如今终于找到了一个封装不错的实例给大家分享。 http://blog.csdn.net/…
Android面试一天一题(16 Day: 线程同步)
最近领导让我在插件框架上加上一个接口,在宿主应用中可以调用所有的插件去清除自己的缓存数据,当完成所有插件的清除任务后再执行下一步操作。领导就是需求嘛,领导改变注意那是再正常不过的事了,但是不是领导的需求人员有可能变多了会…
Android 视图树&View状态保存
FragmentTabHost引起的思考 公司的项目是一个标准的FragmentTabHost与Fragment构成的四TAB布局。其中三个TAB中都包含有ListView来展现一个列表。用户在切换TAB时,ListVi…
android 通知(关闭声音和震动)
8.0版本以下 //单个设置 mBuilder.setVibrate(null); mBuilder.setVibrate(new long[]{0l}) mBuilder.setSound(null); mBuilde…