android中的XML解析器
我使用的是XML解析器。因为我必须将一个id从一个活动传递到另一个活动,但是这个id并没有显示在第一个屏幕的文本视图中。我如何将这个id传递到另一个屏幕 这是我的密码:android中的XML解析器,android,xml-parsing,Android,Xml Parsing,我使用的是XML解析器。因为我必须将一个id从一个活动传递到另一个活动,但是这个id并没有显示在第一个屏幕的文本视图中。我如何将这个id传递到另一个屏幕 这是我的密码: XMLParser parser = new XMLParser(); String xml = parser.getXmlFromUrl(URL); // getting XML Document doc = parser.getDomElement(xml); // g
XMLParser parser = new XMLParser();
String xml = parser.getXmlFromUrl(URL); // getting XML
Document doc = parser.getDomElement(xml); // getting DOM element
NodeList nl = doc.getElementsByTagName(KEY_ITEM);
// looping through all item nodes <item>
for (int i = 0; i < nl.getLength(); i++)
{
// creating new HashMap
HashMap<String, String> map = new HashMap<String, String>();
Element e = (Element) nl.item(i);
// adding each child node to HashMap key => value
map.put(KEY_ID, parser.getValue(e, KEY_ID));
map.put(KEY_NAME, parser.getValue(e, KEY_NAME));
map.put(KEY_LASTVALUE,parser.getValue(e, KEY_LASTVALUE));
map.put(KEY_CHANGE, parser.getValue(e, KEY_CHANGE));
map.put(KEY_STKEXCHANGE, parser.getValue(e, KEY_STKEXCHANGE));
map.put(KEY_LASTPRICE, parser.getValue(e, KEY_LASTPRICE));
// adding HashList to ArrayList
menuItems.add(map);
}
XMLParser=newxmlparser();
字符串xml=parser.getXmlFromUrl(URL);//获取XML
Document doc=parser.getdoElement(xml);//获取DOM元素
NodeList nl=doc.getElementsByTagName(键项);
//循环通过所有项目节点
对于(int i=0;ivalue
put(KEY_ID,parser.getValue(e,KEY_ID));
put(KEY_NAME,parser.getValue(e,KEY_NAME));
put(KEY_LASTVALUE,parser.getValue(e,KEY_LASTVALUE));
put(KEY_CHANGE,parser.getValue(e,KEY_CHANGE));
put(KEY_STKEXCHANGE,parser.getValue(e,KEY_STKEXCHANGE));
put(KEY_LASTPRICE,parser.getValue(e,KEY_LASTPRICE));
//将哈希列表添加到ArrayList
menuItems.add(地图);
}
在这里,我必须在单击特定元素值时传递id,我如何才能做到这一点:
lv.setOnItemClickListener(new OnItemClickListener()
{
@Override
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
// getting values from selected ListItem
// String name = ((TextView) view.findViewById(R.id.name_label)).getText().toString();
// String cost = ((TextView) view.findViewById(R.id.cost_label)).getText().toString();
// String description = ((TextView) view.findViewById(R.id.description_label)).getText().toString();
// Starting new intent
Intent in = new Intent(getApplicationContext(), IndicesDetails.class);
// in.putExtra(KEY_STKEXCHANGE, name);
// in.putExtra(KEY_COST, cost);
// in.putExtra(KEY_DESC, description);
// string ids = getItemId(position);
// in.putExtra("idvalue", id);
startActivity(in);
}
});
lv.setOnItemClickListener(新的OnItemClickListener()
{
@凌驾
public void onItemClick(AdapterView父级、视图、,
内部位置,长id){
//从选定的ListItem获取值
//字符串名称=((TextView)view.findViewById(R.id.name_label)).getText().toString();
//String cost=((TextView)view.findViewById(R.id.cost_label)).getText().toString();
//字符串描述=((TextView)view.findViewById(R.id.description_label)).getText().toString();
//开始新的意图
Intent in=newintent(getApplicationContext(),表示details.class);
//in.putExtra(密钥交换,名称);
//额外费用(关键成本、成本);
//in.putExtra(图例说明、说明);
//字符串ID=getItemId(位置);
//in.putExtra(“idvalue”,id);
星触觉(in);
}
});
在当前活动中:
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
// Starting new intent
Intent in = new Intent(getApplicationContext(), IndicesDetails.class);
in.putExtra("idvalue", id);
startActivity(in);
}
尝试一些可能有用的东西
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
HashMap map=yourArrayList.get(position);
String id=map.get("Your key");
in.putExtra("idvalue", id);
}
public void onItemClick(AdapterView父视图、视图、,
内部位置,长id){
HashMap map=yourArrayList.get(位置);
String id=map.get(“您的密钥”);
in.putExtra(“idvalue”,id);
}
Hi imran khan感谢您的回复。id是我正在从API解析的值。在listview中,我显示了一个项目列表,当我单击特定元素时,它应该采用该特定项目的id(从API解析)。我也尝试了您的建议。但在我的情况下,它不起作用。
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
HashMap map=yourArrayList.get(position);
String id=map.get("Your key");
in.putExtra("idvalue", id);
}