Android入门总结-高级技巧

最近看了一下Android,只看书不总结一下,总感觉东西并没有放在脑子里,人过留名,雁过留声,遂写下这篇总结。

书本看的是《Android编程兵书》,但这篇总结的大纲是按照《第一行代码》的章节目录撰写的。两本书的内容结构大致相同,Android入门的话只看其中一本就够了。

获取全局Context:定制自己的Application类,系统启动的会初始化该Application。

使用Intent传递对象:Serializable和Parcelable
Serializable方式:将某个类实现Serializable接口

class Person implements Serializable{}
Person p = new Person();
Intent intent = new Intent();
intent.putExtra("person_data", p);

//获取该对象
(person) getIntent().getSerializableExtra("person_data");

Parcelable方式:不同于Serializable的将整个对象序列化,Parcelslable实现原理是将一个对象分解,分解后的每一部分都是Intent支持的数据类型。
实现Parcelable接口并重写describeContents()和writeToParcel()两个方法。还要提供一个名为CREATOR的常量。
代码示例

public class Person implements Parcelable{
    
    private String name;

    private int age;

    public int describeContents(){
        return 0;
    }

    public void writeToParcel(Parcel dest, int flags){
        dest.writeString(name);
        dest.writeInt(age);
    }

    //提供一个CREATOR常量
    public static final Parcelable.Creator CREATOR = new Parcelable.Creator(){

        public Person createFromParcel(Parcel source){
            //注意要和writeToParcel的顺序相同
            Person person = new Person();
            person.name = source.readString();
            person.age = source.readInt();
            return person;
        }

        public Person[] newArray(int size){
            return new Person[size];
        }
    }

}

编写测试用例:在项目文件夹下新建Android Test Project。标签表明这是个测试工程。测试类继承自AndroidTestCase,重写其setUp和tearDown方法。测试框架会调用以test开头的方法。在方法内使用assert断言的形式来进行测试。测试工程->Run As->Android JUnit Test运行测试用例。

你可能感兴趣的:(Android入门总结-高级技巧)