获取我在android中单击的listitem的文本

获取我在android中单击的listitem的文本,android,Android,我有一个列表视图。我必须获取我单击的列表项的文本。我试着用McClick。但是我不能得到。请给我解释一下如何得到它 这是我的McClick方法 lstcities.setOnItemClickListener(new OnItemClickListener() { @Override public void onItemClick (AdapterView<?> parent, View view, int position, lon

我有一个列表视图。我必须获取我单击的列表项的文本。我试着用McClick。但是我不能得到。请给我解释一下如何得到它

这是我的McClick方法

lstcities.setOnItemClickListener(new OnItemClickListener() {

            @Override
            public void onItemClick (AdapterView<?> parent, View view, int position, long id) {
                // TODO Auto-generated method stub

//              String str =(String) lstcities.getItemAtPosition(position);
                String S =view.getContext().toString();
            Toast.makeText(getApplicationContext(),
                  "Click ListItem Number " +  S, Toast.LENGTH_LONG)
                  .show();
lstcity.setOnItemClickListener(新的OnItemClickListener(){
@凌驾
public void onItemClick(AdapterView父对象、视图、整型位置、长id){
//TODO自动生成的方法存根
//字符串str=(字符串)lstcity.getItemAtPosition(位置);
字符串S=view.getContext().toString();
Toast.makeText(getApplicationContext(),
“单击列表项目编号”+S,Toast.LENGTH\u LONG)
.show();
谢谢
ramu

您可以从适配器中使用的ArrayList获取字符串


比如:
String str=arrayList[position];//假设这里的arrayList是String[];

您可以从适配器中使用的arrayList获取字符串

比如:
String str=arrayList[position];//假设这里的arrayList是String[];
试试这个

setListAdapter(new ArrayAdapter<String>(this, R.layout.yourlayout,your list));

    ListView listView = getListView();
    listView.setTextFilterEnabled(true);

    listView.setOnItemClickListener(new OnItemClickListener() {
        public void onItemClick(AdapterView<?> parent, View view,
                int position, long id) {
            // When clicked, show a toast with the TextView text
           String selectedValue = (String) getListAdapter().getItem(position);
    Toast.makeText(this, selectedValue, Toast.LENGTH_SHORT).show();

        }
    });
setListAdapter(新的ArrayAdapter(this,R.layout.yourlayout,yourlist));
ListView ListView=getListView();
setTextFilterEnabled(true);
setOnItemClickListener(新的OnItemClickListener(){
public void onItemClick(AdapterView父级、视图、,
内部位置,长id){
//单击后,显示带有文本视图文本的祝酒词
字符串selectedValue=(字符串)getListAdapter().getItem(位置);
Toast.makeText(this,selectedValue,Toast.LENGTH_SHORT).show();
}
});
试试这个

setListAdapter(new ArrayAdapter<String>(this, R.layout.yourlayout,your list));

    ListView listView = getListView();
    listView.setTextFilterEnabled(true);

    listView.setOnItemClickListener(new OnItemClickListener() {
        public void onItemClick(AdapterView<?> parent, View view,
                int position, long id) {
            // When clicked, show a toast with the TextView text
           String selectedValue = (String) getListAdapter().getItem(position);
    Toast.makeText(this, selectedValue, Toast.LENGTH_SHORT).show();

        }
    });
setListAdapter(新的ArrayAdapter(this,R.layout.yourlayout,yourlist));
ListView ListView=getListView();
setTextFilterEnabled(true);
setOnItemClickListener(新的OnItemClickListener(){
public void onItemClick(AdapterView父级、视图、,
内部位置,长id){
//单击后,显示带有文本视图文本的祝酒词
字符串selectedValue=(字符串)getListAdapter().getItem(位置);
Toast.makeText(this,selectedValue,Toast.LENGTH_SHORT).show();
}
});

假设您使用的是
文本视图
,您应该能够

String text = parent.getItemAtPosition(position).getText().toString()

假设您使用的是
文本视图
,您应该能够

String text = parent.getItemAtPosition(position).getText().toString()

如果您对列表项使用自定义视图(自己的xml),您将获得整个xml的视图作为第二个参数(视图视图),使用它您可以找到类似于textView的view.findViewById(您的文本视图id); 如果您使用android定义项目android.R.layout.list_item_1,则使用textview键入视图对象


使用此文本视图,您可以获取文本视图的文本,或者以与列表项中的任何视图相同的方式访问任何视图。

如果您对列表项使用自定义视图(自己的xml)。您将获得整个xml的视图作为第二个参数(视图视图),使用该参数,您可以找到类似文本视图的视图。findViewById(您的文本视图id); 如果您使用android定义项目android.R.layout.list_item_1,则使用textview键入视图对象


使用此文本视图,您可以获取文本视图的文本,或者以与从列表项访问任何视图相同的方式获取文本。

另一种方法是:-

lstcities.setOnItemClickListener(new OnItemClickListener()
{

        @Override
        public void onItemClick (AdapterView<?> parent, View view, int position, long id) 
         {
            String text = (String) (((ListAdapter)parent.getAdapter).getItem(position));
            // Do what you want to with this text
         }
}
lstcity.setOnItemClickListener(新的OnItemClickListener()
{
@凌驾
public void onItemClick(AdapterView父对象、视图、整型位置、长id)
{
字符串文本=(字符串)((ListAdapter)parent.getAdapter.getItem(position));
//使用此文本执行您想要的操作
}
}

另一种方法是:-

lstcities.setOnItemClickListener(new OnItemClickListener()
{

        @Override
        public void onItemClick (AdapterView<?> parent, View view, int position, long id) 
         {
            String text = (String) (((ListAdapter)parent.getAdapter).getItem(position));
            // Do what you want to with this text
         }
}
lstcity.setOnItemClickListener(新的OnItemClickListener()
{
@凌驾
public void onItemClick(AdapterView父对象、视图、整型位置、长id)
{
字符串文本=(字符串)((ListAdapter)parent.getAdapter.getItem(position));
//使用此文本执行您想要的操作
}
}

只需添加以下语句即可:

String selectedFromList = (String) (lv.getItemAtPosition(position));

您只需添加以下语句即可:

String selectedFromList = (String) (lv.getItemAtPosition(position));

您是否使用自定义适配器?您能在问题中发布所有依赖列表视图的代码吗?是..我使用的是customadapter.use this
view parentView=(view)view.getParent();String textview1=((TextView)parentView.findViewById(R.id.textview1)).getText().toString()
非常感谢awadkab它可以工作…但我只能获取第一个列表项..如何获取其他列表项。您是否使用自定义适配器?您可以在问题中发布所有与列表视图相关的代码吗?是..我使用的是customadapter。使用此
视图parentView=(view)view.getParent();字符串textview1=((TextView)parentView.findViewById(R.id.textview1)).getText().toString();
非常感谢它能工作…但我只能获得第一个列表项..如何获得其他列表项。-按此操作您可以发布适配器类代码,看看您尝试了什么。-按此操作您可以发布适配器类代码,看看您尝试了什么。