Android Studio 优秀插件(一):GsonFormat

来源:互联网 发布:java后端开发技术 编辑:程序博客网 时间:2024/06/07 13:15

-------------------------------------------------------------------------------------------------------

这几天没有活,于是乎整理了一些代码,顺便把一些一直在使用的东西也整理下,然后学习新的知识。。

-------------------------------------------------------------------------------------------------------

作为一个Android程序猿,当你看到后台给你的json数据格式时:

复制代码
{    "id":123,    "url": "http://img.donever.com/aa/bb.jpg",    "width":500,    "height":500,    "likeCount":1,    "description":"嘿嘿",    "time":1234567890,    "replyCount":0,    "floorCount":0,    "likeUserCount":5,    "age":14,    "name":"jack",    "school":"beijing",    "type":1,        "sax":"boy",    "userid":1223}
复制代码

是不是要默默的创建一个类,然后一个个变量的private 一下,然后get()+set()?

如果一个json数据提供的属性20+条或者30+条呢,一个个属性去写,还要保证字母不写错,大小写也没错,是不是既浪费时间又浪费精力,那么就试试使用GsonFormat插件吧

 

现在学习下如何使用这个插件:

1、Android Studio 打开一个项目,点击左上角 File -->Settings... 进行设置

 

2、选择插件Plugins , 搜索GsonFormat ,如果你没有下载过这个插件,那么搜索框下面会显示“Nothing to show.Click Browse to....”

 

3、那就点击蓝色字体的 Browse 吧  ,这个时候会出现如下图的界面,我们只需要在左边选中GsonFormat 然后点击右面 绿色按钮 "Install plugin" 就可以了

 

4、完成了上面三个步骤,就可以使用GsonFormat插件了

怎么用呢,

(1)创建一个类文件,类名是看你需求自定义写的

(2)快捷键 alt+insert ,会出现如下选择框

(3)我们点击第一个选项,GsonFormat,就会出现一个新的框,

然后只需要将服务器给你的json数据的 格式复制进去 ,如下所示,点击Ok就可以了(注意json格式不要出错,比如不要少了每个属性后面的逗号)

 

(4)最后一步,出现这么一个框,这里你可以进行相应的编辑,比如吧一个属性的类型改变,或者 去掉属性前面的蓝底白勾,让类不具有某个属性

 

效果类:

复制代码
  1 public class People {  2   3     /**  4      * id : 123  5      * url : http://img.donever.com/aa/bb.jpg  6      * width : 500  7      * height : 500  8      * likeCount : 1  9      * description : 嘿嘿 10      * time : 1234567890 11      * replyCount : 0 12      * floorCount : 0 13      * likeUserCount : 5 14      * age : 14 15      * name : jack 16      * school : beijing 17      * type : 1 18      * sax : boy 19      * userid : 1223 20      */ 21  22     private int id; 23     private String url; 24     private int width; 25     private int height; 26     private int likeCount; 27     private String description; 28     private int time; 29     private int replyCount; 30     private int floorCount; 31     private int likeUserCount; 32     private int age; 33     private String name; 34     private String school; 35     private int type; 36     private String sax; 37     private int userid; 38  39     public static People objectFromData(String str) { 40         Gson gson = new Gson(); 41  42         return new com.google.gson.Gson().fromJson(str, People.class); 43     } 44  45     public void setId(int id) { 46         this.id = id; 47     } 48  49     public void setUrl(String url) { 50         this.url = url; 51     } 52  53     public void setWidth(int width) { 54         this.width = width; 55     } 56  57     public void setHeight(int height) { 58         this.height = height; 59     } 60  61     public void setLikeCount(int likeCount) { 62         this.likeCount = likeCount; 63     } 64  65     public void setDescription(String description) { 66         this.description = description; 67     } 68  69     public void setTime(int time) { 70         this.time = time; 71     } 72  73     public void setReplyCount(int replyCount) { 74         this.replyCount = replyCount; 75     } 76  77     public void setFloorCount(int floorCount) { 78         this.floorCount = floorCount; 79     } 80  81     public void setLikeUserCount(int likeUserCount) { 82         this.likeUserCount = likeUserCount; 83     } 84  85     public void setAge(int age) { 86         this.age = age; 87     } 88  89     public void setName(String name) { 90         this.name = name; 91     } 92  93     public void setSchool(String school) { 94         this.school = school; 95     } 96  97     public void setType(int type) { 98         this.type = type; 99     }100 101     public void setSax(String sax) {102         this.sax = sax;103     }104 105     public void setUserid(int userid) {106         this.userid = userid;107     }108 109     public int getId() {110         return id;111     }112 113     public String getUrl() {114         return url;115     }116 117     public int getWidth() {118         return width;119     }120 121     public int getHeight() {122         return height;123     }124 125     public int getLikeCount() {126         return likeCount;127     }128 129     public String getDescription() {130         return description;131     }132 133     public int getTime() {134         return time;135     }136 137     public int getReplyCount() {138         return replyCount;139     }140 141     public int getFloorCount() {142         return floorCount;143     }144 145     public int getLikeUserCount() {146         return likeUserCount;147     }148 149     public int getAge() {150         return age;151     }152 153     public String getName() {154         return name;155     }156 157     public String getSchool() {158         return school;159     }160 161     public int getType() {162         return type;163     }164 165     public String getSax() {166         return sax;167     }168 169     public int getUserid() {170         return userid;171     }172 }
复制代码

 如果要使用Gson解析的话 ,即 通过Json字符串直接获取对应的类对象

public static People objectFromData(String str) {        Gson gson = new Gson();        return gson.fromJson(str, People.class);    }

记得在build.gradle 中加上

compile 'com.google.code.gson:gson:2.4'
0 0
原创粉丝点击