标签:
1. Gson解析的json字符串中如果有数组类型,在生成模型中声明时——
第一,要手动初始化列表实例,像这样:
public List<Models> models = new ArrayList<Models>();
如果只声明不初始化,解析完成后列表还是空值。
第二,不能用接口声明,如果像上面那行代码一样,解析完成后列表的大小是0。应该这样:
public ArrayList<Models> models = new ArrayList<Models>();
2. Android Studio只是不能开发JNI,不是不能用。要用JNI库的话只需要把so文件复制到libs文件夹下,然后在build.gradle文件的android标签里加入
sourceSets { main { jniLibs.srcDirs = [‘libs‘] } }
即可。
apply plugin: ‘com.android.application‘ android { compileSdkVersion 22 buildToolsVersion "22.0.1" defaultConfig { applicationId "mlxy.toyou" minSdkVersion 15 targetSdkVersion 22 versionCode 1 versionName "1.0" } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile(‘proguard-android.txt‘), ‘proguard-rules.pro‘ } } sourceSets { main { jniLibs.srcDirs = [‘libs‘] } } } dependencies { compile fileTree(dir: ‘libs‘, include: [‘*.jar‘]) compile ‘com.android.support:appcompat-v7:22.0.+‘ }
3. 给EditText绑定OnKeyListener的时候要注意,onKey方法在按键按下时调用一次,抬起时还会调用一次,如果只做了键位的判断会导致同样的事做两遍。
解决办法很简单,不细说。
if (keyCode == KeyEvent.KEYCODE_ENTER && event.getAction() == KeyEvent.ACTION_UP) {
4. 要让ListView显示多种列表项类型不要紧,重写getItemViewType方法就可以,但是要注意,这个方法的返回值,也就是自己声明的列表项类型值要从0开始,不然会导致
java.lang.ArrayIndexOutOfBoundsException: length=2; index=2
暂时就这样。
标签:
原文地址:http://www.cnblogs.com/chihane/p/4672707.html