列表视图中的getItemIdAtPosition()未显示 [英] getItemIdAtPosition() in listview not showing

查看:174
本文介绍了列表视图中的getItemIdAtPosition()未显示的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我需要从listView获取getItemIdAtPosition()才能从sqlite数据库获取记录的ID.当我在任何项目上单击listView时,它始终显示"null"而不显示ID.

I need to get getItemIdAtPosition() from listView to get the id of the records from sqlite database. When i click on the listView on any item, it always shows "null" not showing the id.

这是代码:

       listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
            @Override
            public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {

               int id= ((int) listView.getItemIdAtPosition(i));

                //create our intent, as per usual
                Intent intent=new Intent(Tutorial10.this, Activity2.class);

                intent.putExtra(ID_EXTRA, id);
                startActivity(intent);
            }
        });

本活动2.java

public class Activity2 extends Activity{

String passedVar=null;
private TextView passedView=null;

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.act2);

    //Get our passed variable from our intent's EXTRAS
    passedVar=getIntent().getStringExtra(Tutorial10.ID_EXTRA);
    //find out text view
    passedView=(TextView)findViewById(R.id.passed);
    //display our passed variable!!!
    passedView.setText("YOU CLICKED ON="+passedVar);
}

}

推荐答案

您应更改此行

  int id= ((int) listView.getItemIdAtPosition(i));

与此

  long id = adapterView.getItemIdAtPosition(i);

我希望这可以解决您的问题.

I hope this fixes your problem.

这篇关于列表视图中的getItemIdAtPosition()未显示的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆