`
1025250620
  • 浏览: 225934 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论
文章列表
一、 在res/values 文件下定义一个attrs.xml 文件.代码如下:     <?xml version="1.0" encoding="utf-8"?>      <resources>          <declare-styleable name="MyView">              <attr name="textColor" format="color" />              <attr name=&q ...
mode_shift=30 ,mode_mask=-1073741824, UNSPECIFIED=0, EXACTLY=1073741824, AT_MOST=-2147483648
import java.util.concurrent.ArrayBlockingQueue; import java.util.concurrent.BlockingQueue; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors;  
TouchListener onTouch onClick
  Fragment是Android honeycomb 3.0新增的概念,Fragment名为碎片不过却和Activity十分相似,下面Android123介绍下Android Fragment的作用和用法。Fragment用来描述一些行为或一部分用户界面在一个Activity中,你可以合并多个fragment在一个单独的activity中建立多个UI面板,同时重用fragment在多个activity中.你可以认为fragment作为一个activity中的一节模块 ,fragment有自己的生命周期,接收自己的输入事件,你可以添加或移除从运行中的activity.     一个fra ...
 分析:JVM对于字符串常量的"+"号连接,将程序编译期,JVM就将常量字符串的"+"连接优化为连接后的值,拿"a" + 1来说,经编译器优化后在class中就已经是a1。在编译期其字符串常量的值就确定下来,故上面程序最终的结果都为true。     String a = "ab"; String bb = "b"; String b = "a" + bb;  System.out.println((a == b));  //result = false   ...
  new指令格式:new indexbyte1,indexbyte2   new指令过程:   要执行new指令,Jvm通过计算(indextype1<<8)|indextype2生成一个指向常量池的无符号16位索引。然后JVM根据计算出的索引查找JVM常量池入口。该索引所指向的常量池入 ...
 ldc指令格式:   ldc,index   ldc指令过程:要执行ldc指令,JVM首先查找index所指定的常量池入口,在index指向的JVM常量池入口,JVM将会查找 CONSTANT_Integer_info,CONSTANT_Float_info和CONSTANT_String_info入口。如果还没有这些入口,JVM会解析它们。而对于上面的hahaJVM会找到CONSTANT_String_info入口,同时,将把指向被拘留String对象(由解析该入口的进程产生)的引用压入操作数栈。   astore_1指令格式:   astore_1   astore_1指令 ...
19.3 指令invokespecial Invokespecial和invokeirtual的主要区别在于: invokespcial通常(只有一个例子) 根据引用的类型选择方法,而不是根据对象的类来选择,换句话说。它使用静态绑定而不是动态绑定。在下列使用invokespecial的三种情况中,动态绑定并不会产生所预期的效果。 19.3.1 指令invokespecial和<init>()方法 <init>() 方法(或者实例初始化方法)是编译器为构造方法和实例变量初始化方法放置代码的地方,类不会为源文件中的每个构造方法提供一个<init>()方法。如果没有 ...

XMPP协议(转)

本文介绍XMPP协议原理及相关信息。         XMPP协议简介           XMPP(Extensible Messageing and Presence Protocol:可扩展消息与存在协议)是目前主流的四种IM(IM:instant messaging,即时消息)协议之一,其他三种分别为:即时 ...
在Java中当我们要对数据进行更底层的操作时,通常是操作数据的字节(byte)形式,这时常常会用到ByteBuffer这样一个类。ByteBuffer提供了两种静态实例方式:  Java代码   public static ByteBuffer allocate
  在上一篇中,我解释了为什么我们不通过反射就会很难使用internal和hidden API。这是因为android.jar中就没包含这些API,因此,没人能够在编译时引用这些类。 这篇文章将描述如何还原最初的android.jar。这将允许我们像使用公开的 ...
用过EditText的都知道,EditText有个特点,当在里面长按的时 候,会出现一个ContextMenu,提供了选择文字,复制,剪切等功能。有时候,我们会想,如果不出现这个ContextMenu,直接就在view 上选择文字,那多美好啊。相信很多人抱有这样的想法,很不幸,我也是。于是我就研究了一下EditText和TextView的代码,然后将这个问题解决 了。网上很多资料都说,要选择一段文字,只需要用Selection.getSelectionStart()和 Selection.getSelectionEnd()确定选择的文字的头和尾,然后加颜色就行。简直是胡扯啊,我敢说这样的代 ...
Serial收集器是单线程的垃圾收集器,单线程意味着它将暂停当前机器中的所有线程运行垃圾收集。对于不同的内存分代采用不同的垃圾回收算法。 ParNew收集器是Serial的多线程版本。 CMS:并发收集器(HotSpot) 并行:多条垃圾回收器并行工作 并发用户线程与垃圾回收线程同时执行 Parallel收集器是新生代收集器
Google提供的Android包含了原始Android的目标机代码,主机编译工具、仿真环境,代码包经过解压缩后,第一级别的目录和文件如下所示:.|-- Makefile(全局的Makefile)|-- bionic(Bionic含义为仿生,这里面是一些基础的库的源代码)|-- bootloader(引导加载器)|-- build (build目录中的内容不是目标所用的代码,而是编译和配置所需要的脚本和工具)|-- dalvik(JAVA虚拟机)|-- development (程序开发所需要的模板和工具)|-- external(目标机器使用的一些库)|-- frameworks(应用程序的框 ...
Global site tag (gtag.js) - Google Analytics