android

ViewStub

ViewStub 与 View.GONE 的比较 ViewStub延迟加载指定的布局, 比View.GONE节省资源, 在显示之前是不占用资源的 使用View.GONE属性布局在界面加载时仍会创建对象, 耗费内存 ViewStub 的显示 ViewStub在界面加载时不创建, 设置可见或.inflate();才会创建并显示里面的内容 ViewStub对象只可以使用inflate()一次, 即开始占用内存 在ViewStub在界面上创建之前调用它的布局中的控件(findViewById)会出错 android:id在ViewStub不可见前使用(可见后失效), android:inflatedId 在可见之后使用 使用例子 布局文件中 ...

通过 selector 资源自动改变文字颜色

一: 在 drawable 文件夹下新建xml文件 通过不同的状态自动选择颜色 text_color.xml xml <?xml version="1.0" encoding="utf-8"?> <item android:color="@color/text_blue_color" android:state_pressed="true"/> <item android:color="@color/text_defu_color"/> 12 <item android:color="@color/text_blue_color" android:state_pressed="true"/><item android:color="@color/text_defu_color"/> ...

eclipse 使用

报错: 导入项目已存在

Some projects cannot be imported because they already exist in the workspace

今天想导入一个项目A, 这个项目A是在项目B的基础上改的, 已经修改了项目A的包名, 在我的PC笔记本上两个项目可以同时存在, 当我想将项目A导入我的Macbook上时, 提示已存在, 项目B已在我的工作区内。
最后通过查资料发现eclipse可以通过项目下的 .project 的 name 标签区分不同的项目, 自己的项目A的 name 确实还是项目B的 name。改了之后可以顺利导入。

android插件化开发一

类加载器 DexClassLoader 加载sdcard目录下的apk或jar文件 PathClassLoader 加载路径必须在/data/app路径下 注意点 同一个Class = 相同的 ClassName + PackageName + ClassLoader DexClassLoader构造参数需要一个父加载器, 在父加载器里找不到类时,再从子加载器里加载 DexClassLoader调用loadClass方法加载指定类 代码示例 加载apk里的一个类里的一个方法 插件apk // package com.example.plug; public class GetPlug { public int getAdd(int a, int b) { return a + b; ...

反射

Java的反射机制中, 类有Class对应,类的方法有Method对应,属性与Field对应。 Class Class类表示Java对象的类型 获得Class对象 每一个对象调用getClass()方法取得这个对象的Class类型 Class的静态方法forName(String className) Class对象调用getSuperclass()方法 Java对象调用.class属性 基本类型的.TYPE属性 获得Class的构造方法 Constructor getConstructor(Class[] params) 根据构造函数的参数,返回一个具体的具有public属性的构造函数 Constructor getConstructors() 返回所有具有public属性的构造函数数组 Cons ...

Fragment用法细节

生命周期 Create阶段: onAttach,onCreate,onCreateView,onActivityCreated Destory阶段: onDestroyView,onDestory,onDettach. onAttached() 当fragment被加入到activity时调用(在这个方法中之后可以获得所在的activity) onCreateView() 当activity要得到fragment的layout时,调用此方法,fragment在其中创建自己的layout(界面)。 onActivityCreated() 当activity的onCreated()方法返回后调用此方法 onDestroyView() 当fragment中的视图被移除的时候,调用这个方法。 onDetach() 当fragment和activity分离的时候,调用这个方法 ...

JNI初体验

Java中调用jni代码 Java代码: public native String getString(); 1 public native String getString(); native关键字指定该方法是native方法 同时在Java代码中调用so库 static { System.loadLibrary("hellojni"); } 123     static {        System.loadLibrary( ...

android NDK 环境搭建及基础文件

开发环境 搭建 下载后解压NDK 设置环境变量: 添加环境变量 NDKROOT 为:C:\Users\w\Documents\app\android-ndk-r9d,在环境变量 PATH 下追加 :%NDKROOT%; eclipse中的配置:Window > Preferences > Android > NDK,选择NDK目录到对应解压文件夹 验证是否搭建成功 导入NDK解压目录下 "/samples/"下的某一个项目 右键" Android Tools > Add Native Support", 默认, finish, 正常运行 ndk-build命令 项目右击 > Properties > C/C++ Build > Use default build command > ?? clea ...