几个小问题

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 

 


 

暂时就这样。

你可能感兴趣的:(问题)