Android
文章平均质量分 72
JMathias
这个作者很懒,什么都没留下…
展开
-
沉浸式状态栏的实现--ANDROID – 在 KITKAT 以上版本的 TRANSLUCENT 介紹
ANDROID從 4.4(KITKAT) 開始提供了一個視覺上的提升,讓位在裝置最上方的狀態列(STATUS BAR) 以及最下方的導航列(NAVIGATION BAR) 可以被透明化,並讓APP 的內容可以往上下延伸,使整個畫面的可被利用度大幅提升。 從 3.0 (honeycomb) 開始,導航列被虛擬化,一直都會佔住裝置一塊不算小的空間,對很多人來說,整個畫面無法充份利用,是一件转载 2016-05-24 09:36:44 · 740 阅读 · 0 评论 -
一个简单的demo模拟登录过程页面跳转逻辑和双击退出应用
直接上代码APP:public class APP extends Application { public List activityList; private static APP appInstance; @Override public void onCreate() { super.onCreate(); appIn原创 2017-03-19 22:13:10 · 1352 阅读 · 0 评论 -
DrawerLayout + NavigationView实现侧滑菜单
实现侧滑菜单有多种方式,如使用SlidingMenu,但使用起来比较繁琐,官方也推出了一个能轻松实现侧滑菜单的View,即DrawerLayout。在Android 5.0中,推出了NavigationView控件,DrawerLayout加上NavigationView,实现侧滑菜单就轻而易举了。 DrawerLayout在使用时要作为顶层布局,其他布局和控件都放在其中,我们来原创 2017-01-12 11:42:36 · 786 阅读 · 0 评论 -
CoordinatorLayout + AppBarLayout实现滑动隐藏ToolBar
先看效果 官方推出了实现联动的ViewGroup:CoordinatorLayout ,CoordinatorLayout 实现了NestedScrollingParent接口,CoordinatorLayout 正式因为这个接口才能联动。下图中展示了能联动的View 要使用CoordinatorLayout实现联动,需要他有一个实现了NestedS原创 2017-01-12 14:57:10 · 3405 阅读 · 0 评论 -
Bundle可以存储的数据类型
void putAll(Bundle map) void putBinder(String key, IBinder value) void putBoolean(String key, boolean value) void putBooleanArray(String key, boolean[] value) void putBundle(String key, Bundle va原创 2016-07-26 10:55:44 · 2536 阅读 · 0 评论 -
Android异步消息处理机制完全解析
开始进入正题,我们都知道,Android UI是线程不安全的,如果在子线程中尝试进行UI操作,程序就有可能会崩溃。相信大家在日常的工作当中都会经常遇到这个问题,解决的方案应该也是早已烂熟于心,即创建一个Message对象,然后借助Handler发送出去,之后在Handler的handleMessage()方法中获得刚才发送的Message对象,然后在这里进行UI操作就不会再出现崩溃了。 这转载 2016-10-28 01:38:57 · 370 阅读 · 0 评论 -
Log日志管理
在开发过程中经常会通过打印日志的方式来查看我们的信息,但是如果直接在代码中打印日志,打包上线前,由于打印日志的代码太多而无法屏蔽,在用户使用时日志依然会继续打印,因此可能会造成数据泄露,所以我们经常会写一个日主管理工具类:public class LogUtils{ private static boolean isLog = true;//设置一个bool值原创 2016-11-08 08:18:17 · 805 阅读 · 0 评论 -
Android数据存储五种方式总结
本文介绍Android平台进行数据存储的五大方式,分别如下: 1 使用SharedPreferences存储数据 2 文件存储数据 3 SQLite数据库存储数据 4 使用ContentProvider存储数据 5 网络存储数据下面详细讲解这五种方式的特点第一种: 使用SharedPreferences存储数据转载 2016-10-23 15:38:34 · 969 阅读 · 0 评论 -
Android跨进程通信的四种方式
由于Android系统中应用程序之间不能共享内存。因此,在不同应用程序之间交互数据(跨进程通讯)就稍微麻烦一些。在android SDK中提供了4种用于跨进程通讯的方式。这4种方式正好对应于android系统中4种应用程序组件:Activity、Content Provider、Broadcast和Service。其中Activity可以跨进程调用其他应用程序的Activity;Content P转载 2016-10-23 01:17:23 · 4799 阅读 · 0 评论 -
Java垃圾回收机制
说到垃圾回收(Garbage Collection,GC),很多人就会自然而然地把它和Java联系起来。在Java中,程序员不需要去关心内存动态分配和垃圾回收的问题,这一切都交给了JVM来处理。顾名思义,垃圾回收就是释放垃圾占用的空间,那么在Java中,什么样的对象会被认定为“垃圾”?那么当一些对象被确定为垃圾之后,采用什么样的策略来进行回收(释放空间)?在目前的商业虚拟机中,有哪些典型的垃圾收集转载 2016-06-22 22:54:39 · 511 阅读 · 0 评论 -
状态选择器
一、图片状态选选择器 一)、创建xml文件: 在drawable/xxx.xml下常见xml文件,在同目录下记得要放相关图片 <item android:state_window_focused="false" android:drawable="@drawable/pic1" />原创 2016-07-03 17:06:33 · 1698 阅读 · 1 评论 -
多媒体视频开发
http://blog.csdn.net/zl18603543572/article/details/50783526原创 2016-07-02 02:38:14 · 414 阅读 · 0 评论 -
Java解析XML汇总(DOM/SAX/JDOM/DOM4j/XPath)
目前在Java中用于解析XML的技术很多,主流的有DOM、SAX、JDOM、DOM4j,下文主要介绍这4种解析XML文档技术的使用、优缺点及性能测试。转载 2016-06-12 12:18:21 · 809 阅读 · 0 评论 -
AlarmManager
AlarmManager的使用机制有的称呼为全局定时器,有的称呼为闹钟。通过对它的使用,个人觉得叫全局定时器比较合适,其实它的作用和Timer有点相似。都有两种相似的用法:(1)在指定时长后执行某项操作(2)周期性的执行某项操作AlarmManager对象配合Intent使用,可以定时的开启一个Activity,发送一个BroadCast,或者开启一个Service.下面的代码详细的介绍了转载 2016-06-27 14:23:41 · 536 阅读 · 0 评论 -
Android自定义属性
在Android中我们习惯了在XML布局文件中,进行控件属性的设置,由于控件默认提供的属性数量有限,为了增加属性我们可以给控件添加一些自定义的属性,下面来讲一下为控件添加自定义属性的几个步骤。1>在res/values文件下添加一个attrs.xml文件(没有的话)如下:xml version="1.0" encoding="utf-8"?> resources> d转载 2016-05-02 19:21:59 · 582 阅读 · 0 评论