Android代码碎片(二)

带图标的ListView

activity_main.xml的RelativeLayout中定义了一个ListView          android:id="@+id/listView",
另外我们创建items.xml,里头包括一个ImageView android:id="@+id/image"和一个TextView android:id="@+id/title"
MainActivity.java
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ListView listView = (ListView)findViewById(R.id.listView);
int[] imageId = new int[]{R.drawable.facebook, R.drawable.googleplus, R.drawable.twitter, R.drawable.youtube};
String[] title = new String[]{"facebook", "googleplus", "twitter", "youtube"};
List<Map<String, Object>> listItems = new ArrayList<Map<String, Object>>();
for(int i = 0; i < imageId.length; i++){
Map<String, Object> map = new HashMap<String, Object>();
map.put("image", imageId[i]);
map.put("title", title[i]);
listItems.add(map);
}
SimpleAdapter adapter = new SimpleAdapter(this, listItems, R.layout.items, 
new String[]{"title", "image"}, new int[]{R.id.title, R.id.image});
listView.setAdapter(adapter);

周期性执行任务

/*
* when:几毫秒后第一次执行
* period:执行间距,也就是几时后再执行
*/
new Timer().schedule(new TimerTask() {
public void run() {
}
}, 0, 1200);

解析XML文件

我们在res下新建了xml文件夹,放置city.xml
<?xml version="1.0" encoding="UTF-8"?>
<country>
    <province name="吉林">
        <shenghui>长春</shenghui>
    </province>
    <province name="广东">
        <shenghui>广州</shenghui>
    </province>
</country>


解析关键代码如下:

/*新建XmlPullParser方式一:

XmlPullParser parser = Xml.newPullParser();

parser.setInput(inputStream, "utf-8");*/

/*新建XmlPullParser方式二(与上面一种方法其实都会生成KXmlParser):

XmlPullParserFactory factory = XmlPullParserFactory.newInstance();  
XmlPullParser parser = factory.newPullParser(); */


XmlPullParser parser = getResources().getXml(R.xml.city);
int type;
type = parser.getEventType();
String songId = null;
while(type != XmlPullParser.END_DOCUMENT){
switch (type) {
case XmlPullParser.START_TAG:
if("province".equals(parser.getName())){
Log.v("省份", parser.getAttributeValue(0));
}

else if("shenghui".equals(parser.getName())){

//nextText()会让解析位置改变,从而使得事件发生改变,所以不要在这一个if用两次nextText,可用变量暂存起来

Log.v("省会", parser.nextText());
}
break;
}
type = parser.next();
}



发布了102 篇原创文章 · 获赞 14 · 访问量 13万+

猜你喜欢

转载自blog.csdn.net/fofu33/article/details/40657579
今日推荐