自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(24)
  • 收藏
  • 关注

原创 自定义控件

Why: 为什么要自定义控件特定的显示风格处理特有的用户交互优化我们的布局封装等...How: 如何自定义控件自定义属性的声明与获取分析需要的自定义属性在res/values/attrs.xml定义声明在layout.xml文件中进行使用在View的构造方法中进行获取测量onMeasureMeasureSpec Mode:EXACTIY(明确的:具体数值及m

2016-08-21 14:10:55 271

原创 shape 画图

xml version="1.0" encoding="utf-8"?>shape xmlns:android="http://schemas.android.com/apk/res/android"> 圆角 -->corners android:radius="9dp" android:topLeftRadius="2dp" android:top

2016-08-07 13:01:45 372

原创 Service 以及它的生命周期

Android Service 是运行在后台的代码,不能与用户交互,可以运行在自己的进程,也可以 运行在其他应用程序进程的上下文里。需要通过某一个 Activity 或者其他 Context 对象来调 用, Context.startService() 和 Context.bindService()。  如果在 Service 执行耗时的操作 需要启动一个新线程来执行。Android Serv

2016-07-14 19:41:55 349

原创 说说 Activity,Intent,Service 是什么关系

一个 Activity 通常是一个单独的屏幕,每一个 Activity 都被实现为一个单独的类,这些类都 是从 Activity 基类中继承来的,Activity 类会显示由视图控件组成的用户接口,并对视图控 件的事件做出响应。 Intent 的调用是用来进行架构屏幕之间的切换的。Intent 是描述应用想要做什么。Intent 数 据结构中两个最重要的部分是动作和动作

2016-07-08 12:04:38 4360

原创 两个 Activity 之间跳转时必然会执行的是哪几个方法

onCrante() //在 Activity 生命周期开始时调用 onRestoreInstanceState()//用来恢复 UI 状态onReStart()//当 Activity 重新启动时调用onStart()//Activity 对用户即将可见时调用 onResume()//当 Activity 与用户交互时,绘制面 onSaveInstanceState()//a

2016-07-08 12:03:56 4161

原创 描述 Intent 和 Intent Filter

Intent 在 Android 中被翻译为"意图",熟语来讲就是目的,他们是三种应用程序基本组件 —activity,service 和 broadcast receiver 之间互相激活的手段。在调用 Intent 名称时使用 ComponentName 也就是类的全名时为显示调用。这种方式一般用于应用程序的内部调用, 因为你不一定会知道别人写的类的全名。我们来看看隐式 Intent 

2016-07-08 12:02:28 647

原创 Service 有哪些启动方法,有什么区别,怎样停用 Service?

两种启动 Service 的方式 Context.startService() 和 Context.bindService()。 区别 为 Context.startService():Service 会经历 onCreate -> onStart(如果 Service 还没有运行, 则android先调用onCreate()然后调用onStart();如果Service已经运行,则只调用on

2016-07-08 11:58:45 737

原创 StringBuffer和StringBuilder的区别?

1. 在执行速度方面的比较:StringBuilder > StringBuffer 2. StringBuffer与StringBuilder,他们是字符串变量,是可改变的对象,每当我们用它们对字符串做操作时,实际上是在一个对象上操作的,不像String一样创建一些对象进行操作,所以速度就快了。3. StringBuilder:线程非安全的StringBuffer:线程安全的 当我

2016-07-03 23:22:24 224

原创 内存泄露

内存泄漏解释  简单的说就是申请了一块内存空间,使用完毕后没有释放掉。它的一般表现方式是程序运行时间越长,占用内存越多,最终用尽全部内存,整个系统崩溃。由程序申请的一块内存,且没有任何一个指针指向它,那么这块内存就泄露了。泄漏的分类以发生的方式来分类,内存泄漏可以分为4类:(1). 常发性内存泄漏。  发生内存泄漏的代码会被多次执行到,每次被执行的时候都会导致一块内存泄漏。

2016-07-03 23:21:24 275 1

原创 图片适配 压缩比例 (纯代码)

public class BitmapUtils {    public static Bitmap decodeSampledBitmapFromResource(String  filePath,            int reqWidth, int reqHeight) {        //加载图片的边界信息(只读取图片的高度,宽度,不读取具体字节)      

2016-07-03 16:29:57 582

原创 Android常见异常

1. 异常机制1.1 异常机制是指当程序出现错误后,程序如何处理。具体来说,异常机制提供了程序退出的安全通道。当出现错误后,程序执行的流程发生改变,程序的控制权转移到异常处理器。1.2 传统的处理异常的办法是,函数返回一个特殊的结果来表示出现异常(通常这个特殊结果是大家约定俗称的),调用该函数的程序负责检查并分析函数返回的结果。这样做有如下的弊端:例如函数返回-1代表出现异常,但是如果函数

2016-07-03 16:28:47 1050

原创 登陆注册如何实现

登陆注册如何实现1.首先页面对输入的数据进行数据格式校验2.点击登陆按钮触发登陆事件3.数据被传到后台数据库4.如果数据库没有  提示:请前往注册页面进行注册5.在注册页面输入数据,点击注册6.数据保存到数据库7.提示注册成功跳转登陆界面登陆8.数据校验格式正确点击登陆与数据库匹配,匹配成功登陆成功

2016-06-25 17:39:58 941

原创 如果后台的 Activity由于某原因被系统回收了,如何在被系统回收之前保存当前状态?

如果后台的 Activit由于某原因被系统回收了,如何在被系统回收之前保存当前状态?onSaveInstanceState() 当你的程序中某一个Activity A 在运行时,主动或被动地运行另一个新的 Activity B,这个时候A 会执行 onSaveInstanceState()。B 完成以后又会来找A,这个时候就有两种情况:一是A 被回收,二是 A没有被回收,被回收的 A就

2016-06-25 17:39:12 974

原创 如何退出 Activity,如何安全退出已调多个Activity的 的 Application?

对于单一Activity的应用来说,直接finish();我们在项目开发的时候可能会遇到安全退出应用的场景,如何能够安全退出多个Activity?1.抛异常退出:该方法通过抛异常,使程序Force Close.    验证可以,但是需要解决的问题是如何使程序结束掉而不弹出ForceClose的窗口。2.记录打开的Activity每打开一个Activity就记录下来,

2016-06-25 17:38:17 636

原创 android常见异常总结

1. 异常机制1.1 异常机制是指当程序出现错误后,程序如何处理。具体来说,异常机制提供了程序退出的安全通道。当出现错误后,程序执行的流程发生改变,程序的控制权转移到异常处理器。1.2 传统的处理异常的办法是,函数返回一个特殊的结果来表示出现异常(通常这个特殊结果是大家约定俗称的),调用该函数的程序负责检查并分析函数返回的结果。这样做有如下的弊端:例如函数返回-1代表出现异常,但是如果函数

2016-06-22 23:17:40 287

原创 TCP和UDP Socket

UDP将数据及源和目的封装成数据包中,不需要建立连接每个数据报的大小在限制64k内因无连接,是不可靠协议不需要建立连接,速度快TCP建立连接,形成传输数据的通道在连接中进行大数据量传输通过三次握手完成连接,是可靠协议必须建立连接,效率会降低SocketJava网络编程在很大的程度上就是套接字(Socket)编程,套接字是让用户与网络通信的

2016-06-22 20:05:31 322

原创 color

#FFFFFF  #FFFFF0  #FFFFE0  #FFFF00  #FFFAFA  #FFFAF0  #FFFACD  #FFF8DC  #FFF5EE  #FFF0F5  #FFEFD5  #FFEBCD  #FFE4E1  #FFE4C4  #FFE4B5  #FFDEAD  #FFDAB9  #FFD700  #F

2016-06-22 18:08:11 209

原创 MVC

M:model模型层    DAO:数据库访问对象    BIZ:业务逻辑处理    ENTITY:封装实现数据V:view 视图层 UI(界面)            直接和用户进行交互的android项目中的布局页面            自定义viewC:Contoler 控制器(Activity)   在开发中使用mvc开发模式能够使代码分工协作,各司其职。

2016-06-22 16:27:36 236

原创 https传输

一个HTTPS请求实际上包含了两次HTTP传输,可以细分为8步。客户端向服务器发起HTTPS请求,连接到服务器的443端口。服务器端有一个密钥对,即公钥和私钥,是用来进行非对称加密使用的,服务器端保存着私钥,不能将其泄露,公钥可以发送给任何人。服务器将自己的公钥发送给客户端。客户端收到服务器端的公钥之后,会对公钥进行检查,验证其合法性,如果发现发现公钥有问题,那

2016-06-16 19:24:12 398

原创 密码学基础

在正式讲解HTTPS协议之前,我们首先要知道一些密码学的知识。明文: 明文指的是未被加密过的原始数据。密文:明文被某种加密算法加密之后,会变成密文,从而确保原始数据的安全。密文也可以被解密,得到原始的明文。密钥:密钥是一种参数,它是在明文转换为密文或将密文转换为明文的算法中输入的参数。密钥分为对称密钥与非对称密钥,分别应用在对称加密和非对称加密上。对称加密:对称加密又叫做私钥加密,

2016-06-16 19:02:42 655

原创 AIDL通讯注意事项

1.android interface define language  安卓接口定义语言  是完成进程间通讯(IPC)的一种方式2.客户端和服务端都要遵循相同的aidl标准3.服务端的激活方式可以使用隐式意图4.当绑定服务的时候返回的是一个IBinder代理,通常可以使用AIDL的内部类Stub.  方法将代理转换成Ibinder对象5.AIDL的语法规则和接口类似,

2016-06-12 07:54:14 247

原创 handler机制的原理

android提供了handler和looper来满足线程间的通信。Handler先进先出原则。looper用来管理特定线程内对象之间的消息交换(message Exchange).    1)looper:一个线程可以产生一个looper对象,由它来管理此线程里的message queue(消息队列)   2)handler:你可以构造一个handler对象来与looper沟通,以便pu

2016-06-03 19:30:28 201

原创 android小常识

Android项目的结构-------------------------------src -> 用于存放Java源代码和其它程序源文件gen -> 用于存放自动生成的Java文件assets -> 用于存放自定义的初始文件,例如音频文件等bin -> 用于存放执行文件,这些文件是运行项目时自动生成的libs -> 用于存放扩展jar包res -> 用于存放资源文件,

2016-05-02 15:42:51 238

原创 xml文件解析

Xml文件的解析方法Pull和Sax都是基于流操作文件,然后根据节点事件回调开发者编写的处理程序,Pull和Sax因为是基于流的处理,因此都是比较节约内存资源Dom把所有节点以对相熟的形式展现在内存中,Pull比Sax更简明,而且不需要扫描完整个流自动将时间推入注册的时间处理器进行处理,不能控制事件的处理主动结束允许你的应用程序代码主动从解析器中获取时间,可

2016-04-26 21:14:38 279

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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