安卓中xml解析天气预报

来源:互联网 发布:淘宝diy耳机哪家好 编辑:程序博客网 时间:2024/06/13 23:16


第一步:将天气信息文件导入assets

第三步:在布局xml下设置背景

第二步:在java中编辑逻辑

public class MainActivityextends Activity {

 

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

getWeatherInfo();

}

 

/**

 * 获取天气信息

 */

private void getWeatherInfo() {

try {

XmlPullParser parser = Xml.newPullParser();

// 设置解析器的参数

InputStream is =getAssets().open("getWeatherbyCityName.xml");

parser.setInput(is,"utf-8");

List<String> infos = new ArrayList<String>();

int type = parser.getEventType();

while(type!=XmlPullParser.END_DOCUMENT){

if(type==XmlPullParser.START_TAG){//当前是开始节点.

if("string".equals(parser.getName())){

String info = parser.nextText();

infos.add(info);

}

}

type = parser.next();//只要不解析到文档的末尾就不停的解析下一个节点

}

is.close();

String cityname = infos.get(0);

String temp = infos.get(1);

String weather = infos.get(2);

String wind = infos.get(3);

String wearinfo = infos.get(4);

TextView tv = (TextView) findViewById(R.id.tv_info);

tv.setText("城市名称:"+cityname+"\n温度:"+temp+"\n天气信息:"+weather+"\n风力:"+wind+"\n穿衣指数:"+wearinfo);

} catch (Exception e) {

e.printStackTrace();

}

 

}

}

0 0