0
A
回答
4
這裏試試這個
在你想要的ListView控件是在活動:
public class listView extends ListActivity {
ArrayList<String> items = new ArrayList<String>();
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.listViewLayout);
try {
/** Handling XML */
SAXParserFactory spf = SAXParserFactory.newInstance();
SAXParser sp = spf.newSAXParser();
XMLReader xr = sp.getXMLReader();
/** If using remote server for xml file */
URL sourceUrl = new URL("http://www.server.com/fileToParse.xml");
/** Create handler to handle XML Tags (extends DefaultHandler) */
ExampleHandler myXMLHandler = new ExampleHandler();
xr.setContentHandler(myXMLHandler);
/** if using remote file */
xr.parse(new InputSource(sourceUrl.openStream()));
/** if local file */
xr.parse(new InputSource(getContext().getResources().getXml(R.fileToParse.MyXml));
}catch(Exception e) {
Log.e("XML Error "+e.toString());
}
/** Get result from MyXMLHandler SitlesList Object */
sitesList = ExampleHandler.sitesList;
for(int i = 0; i < sitesList.getName().size(); i++) {
items.add(sitesList.getName().get(i)+" "+sitesList.getLastName().get(i));
}
/** Set the layout view to display */
setListAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, items));
}
public void onListItemClick(ListView parent, View v, int position, long id) {
/** puExtra method for if you want to pass variable to next activity */
Intent i = new Intent(this, listViewSub.class);
i.putExtra("name", sitesList.getName());
startActivity(i);
}
}
listViewLayout.xml: Can't get layout file to show so click here
ExampleHandler.java:
public class ExampleHandler extends DefaultHandler{
Boolean currentElement = false;
String currentValue = null;
public static SitesList sitesList = null;
public static SitesList getSitesList() {
return sitesList;
}
public static void setSitesList(SitesList sitesList) {
ExampleHandler.sitesList = sitesList;
}
/** Called when tag starts (ex:- <name>AndroidPeople</name>
* -- <name>)*/
@Override
public void startElement(String uri, String localName, String qName,
Attributes attributes) throws SAXException {
currentElement = true;
if (localName.equals("Records"))
{
/** Start */
sitesList = new SitesList();
}
}
/** Called when tag closing (ex:- <name>AndroidPeople</name>
* -- </name>)*/
@Override
public void endElement(String uri, String localName, String qName)
throws SAXException {
currentElement = false;
/** set value */
if (localName.equalsIgnoreCase("FirstName"))
sitesList.setName(currentValue);
else if(localName.equalsIgnoreCase("LastName"))
sitesList.setLastName(currentValue);
}
/** Called to get tag characters (ex:- <name>AndroidPeople</name>
* -- to get AndroidPeople Character) */
@Override
public void characters(char[] ch, int start, int length)
throws SAXException {
if (currentElement) {
currentValue = new String(ch, start, length);
currentElement = false;
}
}
}
SitesList.java:
public class SitesList {
/** Variables */
private ArrayList<String> name = new ArrayList<String>();
private ArrayList<String> lastName = new ArrayList<String>();
/** In Setter method default it will return arraylist
* change that to add */
public ArrayList<String> getName() {
return name;
}
public void setName(String name) {
this.name.add(name);
}
public void setLastName(String lastName) {
this.lastName.add(lastName);
}
public ArrayList<String> getLastName() {
return lastName;
}
}
fileToParse.xml:Click here for xml file
0
聲明xml中的滾動視圖& relativelayout,因爲它是孩子。現在你可以添加它們來創建你想要顯示的表格行數(動態地)添加數據到它&添加這些表格行到relativealayout.So會得到listview的感覺。我用這種方式&工作出色。
0
這是最全面的資源,你會發現:
http://www.ibm.com/developerworks/opensource/library/x-android/
基本上你需要創建一個從你解析數據適配器和它喂到ListView。你可以擴展BaseAdapter來創建一個自定義的,或者只是使用ArrayAdapter。
相關問題
- 1. 在sax xml解析後在列表視圖中顯示項目
- 2. 在sax xml解析後在列表視圖中顯示項目
- 3. Json解析數據不在列表視圖中顯示
- 4. 解析JSON數據並顯示在列表視圖
- 5. 數據未顯示在表視圖中JSON解析iOS中
- 6. 在Android中解析plist並在列表視圖中顯示數據
- 7. 如何在xml解析和數據顯示在android中的列表視圖中解析數據
- 8. 在列表視圖中顯示數據
- 9. 解析XML數據到哈希表中並顯示在列表視圖中?
- 10. 在Android中解析並在列表視圖中顯示結果
- 11. 從數據庫顯示和解析圖像到列表視圖
- 12. 在數組列表中存儲Sax解析器數據爲HashMap
- 13. 列表視圖不顯示相應的數據,當解析json
- 14. XML解析和顯示數據列表視圖
- 15. 如何在可展開的列表視圖中顯示JSON解析的數據?
- 16. XML解析,並顯示在列表視圖中的結果
- 17. 在數據庫中顯示數據在列表視圖
- 18. 如何在Titanium中解析json以在表格視圖中顯示數據
- 19. Yii2列表視圖如何在視圖中顯示的數據
- 20. 通過JSON解析數據並將其顯示在可擴展列表視圖
- 21. 解析JSON數據到列表視圖
- 22. 在列表視圖後顯示imageview
- 23. 從數據表在列表視圖中顯示圖像
- 24. 解析JSON並在列表視圖上顯示對象
- 25. DOM解析後在自動填充文本視圖中顯示數據
- 26. 使用Volley解析json數據後不顯示Recycler視圖
- 27. 如何在數據庫中顯示數據的列表視圖?
- 28. 顯示在列表視圖中的數據從數據庫
- 29. 在表格視圖中顯示數據
- 30. Android:在列表視圖中解析Json
如果使用遠程文件解析不要忘記以下權限添加到您的清單文件「android.permission.INTERNET對」 – camelCaseD 2011-07-06 05:44:25