Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/196.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在android中获取listview项索引_Android_Android Listview - Fatal编程技术网

在android中获取listview项索引

在android中获取listview项索引,android,android-listview,Android,Android Listview,我的自定义ListView适配器类如下所示。 我想在按下一个项目后获得该项目的索引号(onclick)。如何获取索引号并将其传递给int。。获取索引号的代码位于onCreate方法之后。请帮帮我 // On holder.txtstormName_Nice button click i want to get selected item index. public class ListViewCustomAlerts extends BaseAdapter { ArrayList<

我的自定义ListView适配器类如下所示。 我想在按下一个项目后获得该项目的索引号(onclick)。如何获取索引号并将其传递给int。。获取索引号的代码位于onCreate方法之后。请帮帮我

// On holder.txtstormName_Nice button click i want to get selected item index.
public class ListViewCustomAlerts extends BaseAdapter {

    ArrayList<HurricaneBeanClass> itemList;

    public Activity context;
    public LayoutInflater inflater;
    public ListViewCustomAlerts(Activity context,ArrayList<HurricaneBeanClass> arraylist_List) 
    {
        super();
        this.context = context;
        this.itemList = arraylist_List;
        this.inflater = (LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
    }
    @Override
    public int getCount() 
    {
        return itemList.size();
    }

    @Override
    public Object getItem(int position) 
    {
        return itemList.get(position);
    }

    @Override
    public long getItemId(int position) {
        return 0;
    }
    @Override
    public View getView(final int position, View convertView, ViewGroup parent) {
         p =position;
       final ViewHolder holder;
        if(convertView==null)
        {
            holder = new ViewHolder();
            convertView = inflater.inflate(R.layout.hurricane_row, null);  
            holder.txtstormName_Nice=(TextView)convertView.findViewById(R.id.hurricaneNameRowTextView);
            convertView.setTag(holder);  

        }
        else
            holder=(ViewHolder)convertView.getTag();
        HurricaneBeanClass bean = (HurricaneBeanClass) itemList.get(position);
        holder.txtstormName_Nice.setText(bean.getStormName_Nice());

        holder.txtstormName_Nice.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View arg0) {
                // TODO Auto-generated method stub
        //here i want item index.................
                HurricaneBeanClass bean = (HurricaneBeanClass) itemList.get(position);
                HurricaneActivity.curlat=bean.getCurentlat();
                HurricaneActivity.curlon=bean.getCurentlon();

...

            }
        });

        return convertView;

    }                  

}

public static class ViewHolder
{
    TextView txtstormName_Nice;
}
//在holder.txtstormName\u Nice按钮上单击我想获取所选项目索引。
公共类ListViewCustomAlerts扩展BaseAdapter{
ArrayList项目列表;
公共活动语境;
公共场所;充气机;
public ListViewCustomAlerts(活动上下文,ArrayList ArrayList_列表)
{
超级();
this.context=上下文;
this.itemList=arraylist\u List;
this.inflater=(LayoutInflater)context.getSystemService(context.LAYOUT\u inflater\u SERVICE);
}
@凌驾
public int getCount()
{
返回itemList.size();
}
@凌驾
公共对象getItem(int位置)
{
返回itemList.get(位置);
}
@凌驾
公共长getItemId(int位置){
返回0;
}
@凌驾
公共视图getView(最终整数位置、视图转换视图、视图组父视图){
p=位置;
最终持票人;
if(convertView==null)
{
holder=新的ViewHolder();
convertView=充气机。充气(R.LAYOU row,空);
holder.txtstormName_Nice=(TextView)convertView.findViewById(R.id.hurricaneNameRowTextView);
convertView.setTag(支架);
}
其他的
holder=(ViewHolder)convertView.getTag();
HurricaneBeanClass bean=(HurricaneBeanClass)itemList.get(位置);
holder.txtstormName_Nice.setText(bean.getStormName_Nice());
holder.txtstormName\u Nice.setOnClickListener(新的OnClickListener(){
@凌驾
公共void onClick(视图arg0){
//TODO自动生成的方法存根
//在这里我想要项目索引。。。。。。。。。。。。。。。。。
HurricaneBeanClass bean=(HurricaneBeanClass)itemList.get(位置);
HurricaneActivity.curlat=bean.getCurentlat();
HurricaneActivity.curlon=bean.getCurentlon();
...
}
});
返回视图;
}                  
}
公共静态类视图持有者
{
TextView txtstormName_Nice;
}
在getView()方法中,您可以获得它

 public View getView(final int position, View convertView, ViewGroup parent) {
 .........
 .....

  System.out.println("Index:"+position);
 }

所以,这里的位置是您的索引

列表视图项的位置已经出现在参数列表中

public View getView(int position, View convertView, ViewGroup parent) {

如果需要元素的de id,可以在getView中编写:

getItemId(position)

当我在getView()方法中获得位置时。它为所有项目提供了相同的位置,但我在onClick()中使用它,然后它对我有效。!谢谢Chintan!