空闲之余,想到上次看过的一个图灵机器人开发视频。直接上其官网看开发者手册,自己动手写了一个图灵机器人小应用。编写的思路基本和网上的一些开发视频不谋而合,都是网络访问+json解析,再者就是设计出好看的界面。有兴趣的同学可以根据自己的需求进行更改甚至细化里面的查询功能,完全可以做出一款完整的app应用。先上图看看我的demo效果:
这个项目主要包括三个部分:UI设计与开发、调用图灵API获取数据json解析封装成Bean、listview的优化显示。
UI设计与开发
先看下整个xml的UI布局
布局很简单,从左上角可以看到整个布局的排版。这对于android开发者来说很easy,其中listview使用了以下设置是为了填满中间空间。
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
使用圆角的边缘shape文件(拿EditText为例)
<?xml version="1.0" encoding="UTF-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle" >
<gradient
android:endColor="#ffffff"
android:startColor="#ffffff" />
<corners
android:bottomLeftRadius="5dp"
android:bottomRightRadius="5dp"
android:topLeftRadius="5dp"
android:topRightRadius="5dp" />
<stroke
android:width="1dip"
android:color="#ffffff" />
</shape>
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_focused="true"
android:state_pressed="true"
android:drawable="@drawable/start_clickafter" />
<item android:state_focused="false"
android:state_pressed="true"
android:drawable="@drawable/start_clickafter" />
<item
android:state_selected="true"
android:drawable="@drawable/start_clickafter"
/>
<item
android:state_focused="true"
android:drawable="@drawable/start_clickafter"
/>
<!-- 默认时的背景图片-->
<item android:state