改变Android状态栏字体颜色和实现沉浸式状态栏

目前已知的改变Android状态栏字体颜色的方法只有3种情况下可以实现,分别是手机是MIUI系统、魅族手机以及Android6.0。改变颜色方法分别如下:     * 改变小米的状态栏字体颜色为黑色, 要求MIUI6以上   lightStatusBar为真时表示黑色字体 ...

2016-03-24 18:01:58

阅读数 5196

评论数 1

Serializable序列化以及什么是序列化

在计算机中,一些数据都是以二进制流的形式存在的,比如网络之间数据的通信使用的是二进制流,本地数据保存也是二进制流。这里说个概念,将数据保存到本地磁盘的过程叫“持久化”。 但是在java中,一个java类是以一个对象的形式存在的,所以如果要将这个对象保存在本地或者将这个对象与其他进程或者在...

2016-02-28 17:05:41

阅读数 331

评论数 0

Activity生命周期详解

Actvitiy的生命周期是Android知识点的重中之重,必须要掌握的。 什么是生命周期?生命周期在我看来就是一个事物从创建到死亡的一系列过程,比如人有生命周期,电子产品也有生命周期,一个线程也有生命周期。同样Activity也有生命周期。 Activity的生命周期如下图所...

2016-02-28 13:35:11

阅读数 253

评论数 0

Activity堆栈详解

Activity作为Android四大组件之一,承载着显示界面的重要作用。了解Activity的启动模式也尤为重要。 在Android中,Activity一共有四种启动模式,分别为Standard、SingleTop、SingleTask和SingleInstance,设置Activit...

2016-02-27 19:49:08

阅读数 401

评论数 0

对于OOM的一点注意点

有的时候我们在操作Bitmap的时候会因为java虚拟机分配的内存不足而导致OOM,很多时候我们可以直接捕获这个OOM而不让程序崩溃,但这里需要注意的是,我们需要捕获的是OOM ERROR而不是exception。 以内OOM是一种error而不是exception 如 try{ }cat...

2016-02-18 16:44:56

阅读数 242

评论数 0

利用Android Studio搜索在程序中的硬编码字符串(String)

我们经常会因为贪图便利,在程序中直接编写字符串,比如String str = “你好”; 但实际上这是很不好的习惯,因为一旦项目变大了,如果想翻译别国语言,这些字符串必然会影响整个程序的翻译工作,并且硬编码会被直接编入class,对程序也会产生不好的作用。 正常下,我们应该把string字符串...

2016-01-26 13:58:31

阅读数 3208

评论数 1

Android WebView开发需要注意的地方和优化

我们在native与网页相结合开发的过程中,难免会遇到关于WebView一些共通的问题。就我目前开发过程中遇到的问题以及最后得到的优化方案都将在这里列举出来。有些是老生常谈,有些则是个人摸索得出解决方法。下面就是整理得到的些干货。 1.加快HTML网页装载完成的速度 默认情况html代...

2016-01-21 10:22:57

阅读数 193

评论数 0

Android中WebView和JavaScript(JS)的互相调用

你在公司里写一个Android App会出现这么个情况: 某天,老大突然跟你说,有一个新的需求,界面大概是这样的:……%¥#@。你一听完,头皮发麻,UI界面这么复杂。这时候老大看你难受的样子,突然告诉你说:我们决定用H5页面代替这个界面,用JS来调用客户端的一些逻辑。你一听,很happy,终于不...

2016-01-14 16:46:15

阅读数 542

评论数 0

将Android开源项目通过Gradle发布到bintray/Jcenter

我们经常在github上看到有的项目可以通过gradle的compile一个包的方式将第三方开源项目加入到我们的项目中,那么这是怎么做到的呢?想将自己的开源项目变成这种形式,让别人也可以compile,需要进行以下步骤: 一、在项目中保存bintray帐号信息 首先,我们需要一个bintr...

2016-01-13 14:52:34

阅读数 3351

评论数 0

【Android View】Android中View对触摸事件的处理和传递dispatchTouchEvent、onInterceptTouchEvent

View中存在dispatchTouchEvent、onTouchEvent两个方法。 而ViewGroup中则存在dispatchTouchEvent、onInterceptTouchEvent、onTouchEvent三个方法。 调用顺序依次为dispatchTouchEvent——》on...

2016-01-07 22:12:36

阅读数 1683

评论数 0

Android中Activity的启动模式详解

Android的Activity有四种启动模式,分别是: standard singleTop singleTask singleInstance 启动模式需要在AndroidManifest.xml对Activity进行设置 如: <activity android:name...

2015-12-21 21:02:46

阅读数 366

评论数 0

Android播放器开发注意事项

如果开发播放器,记得在有surfaceview的activity界面,即播放器界面加入这句话getWindow().setFormat(PixelFormat.TRANSPARENT); 否则surfaceview的创建比较靠前会导致activity闪屏或短暂性黑屏

2015-11-10 09:53:36

阅读数 138

评论数 0

Android-ListView和ScrollView内嵌套listview的问题

ListView和ScrollView存在一个bug,在这两个组件内再嵌套一个listview,里面的那个listview因为无法确定高度,导致只会显示一条记录,无论你的getcount是几都只会显示一条,有两种做法可以处理,一种是计算内部listview的高度,并指定高度 如下代码: ...

2015-10-26 11:19:25

阅读数 148

评论数 0

【Android控件原理】控件View的绘制

在Android中,所有控件都放置在控件树中,并由view_parent负责管理,绘制前,处于控件树根部的控件开始发起丈量,从上至下计算通过measure函数计算各个控件的大小尺寸,计算方式上父控件会计算自己的大小再传递给子控件,子控件通过自己的需要推算出尺寸大小,如果父控件不知道自己的大小,子控...

2015-06-02 12:01:08

阅读数 333

评论数 0

【Android系统内的进程】Zygote进程的创建

我们都知道,Android的应用程序都需要在Dalvik虚拟机中才能运行,在Android中,每一个应用程序对应一个进程,一个进程就是一个Dalvik虚拟机。 那么有人会想到为什么Google不设置一个全局的Dalvik虚拟机,然后每个应用程序都去使用这个Dalvik虚拟机呢?这样内存内就不需要...

2015-05-25 17:31:06

阅读数 326

评论数 0

提示
确定要删除当前文章?
取消 删除
关闭
关闭