Mil*_*loš 42 android android-layout
我有一些包含一些项目的列表视图.我想从所选项目中获取文本.
这是我的列表适配器和onItemClickListener:
ListView lv = (ListView)findViewById(R.id.listView1);
lv.setAdapter(new ArrayAdapter<Country>(
this,R.layout.list_black_text,R.id.list_content, values));
lv.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
??????
}});
}
Run Code Online (Sandbox Code Playgroud)
你能告诉我如何从所选项目中获取字符串.
方法((TextView)视图).getText()不起作用,我有一个
ClassCastException: android.widget.LinearLayout
Run Code Online (Sandbox Code Playgroud)
我找到了解决方案,也许有人会需要它:
ListView lv = (ListView)findViewById(R.id.listView1);
lv.setAdapter(new ArrayAdapter<Country>(
this,R.layout.list_black_text,R.id.list_content, values));
lv.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
TextView textView = (TextView) view.findViewById(R.id.list_content);
String text = textView.getText().toString();
System.out.println("Choosen Country = : " + text);
}});
Run Code Online (Sandbox Code Playgroud)
And*_*ler 63
用这个:
String selectedFromList = (lv.getItemAtPosition(position));
Run Code Online (Sandbox Code Playgroud)
希望它会有所帮助.:)
Ris*_*shi 14
为此,您需要编写以下内容:
lv.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
TextView textView = (TextView) view.findViewById(R.id.list_content);
String text = lv.get(position).toString().trim();
System.out.println("Chosen Country = : " + text);
}});
Run Code Online (Sandbox Code Playgroud)
其他答案看起来不错,但我想到I'd wrap everything了一个完整的答案。
有multiple ways实现这一点,这也取决于你是否是从获取文本simple listView或Custom ListView(with custom_list_item.xml).
对于简单的列表视图
lv.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
String text = lv.get(position).tostring().trim();//first method
final String text = ((TextView)view).getText();// second method
}});
Run Code Online (Sandbox Code Playgroud)
对于自定义列表视图
lv.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
TextView textView = (TextView) view.findViewById(R.id.list_content);
//where list_content is the id of TextView in listview_item.xml
}});
Run Code Online (Sandbox Code Playgroud)
与他人的问题 答案
@Android Killer 缺少字符串转换。
@Rishi 没有提供有关使用 R.id.list_content 的详细信息
| 归档时间: |
|
| 查看次数: |
89150 次 |
| 最近记录: |