onItemClick listView一个关闭,最后一个项目点击导致崩溃?

时间:2014-01-15 15:49:06

标签: android listview android-listview

当我为listview设置onClickListener并设置定位时,每个listview单元格似乎都是一个,并且最后一个listview单元格会导致崩溃。例如,如果我有5个项目的列表视图,如果我点击第一个,第二个详细信息显示,如果我点击第二个,第三个显示 - 最后一个项目导致崩溃,显然第一个项目详细信息从来没有出现过一个...不确定这里的问题是什么或者我将如何解决这个问题?从来没有遇到过这个问题...

private static void updateUI() {
        SimpleAdapter adapter = new SimpleAdapter(
                context, bookList,
                R.layout.list_view, new String[] { "bookName",
                        "bookDetails", "bookYear" },
                new int[] { R.id.bookName,
                        R.id.bookDetails,
                        R.id.bookYear });
        mBookList.setAdapter(adapter);
        mBookList.setOnItemClickListener(new AdapterView.OnItemClickListener() {
            @Override

            public void onItemClick(AdapterView<?> parent, View view,
                    int position, long id) {


                    String externalURL = bookList.get(position).get("site_detail_url");

                    Intent intent = new Intent(context, BookWebViewActivity.class);
                    intent.setData(Uri.parse(externalURL));
                    context.startActivity(intent);


            }
        });

2 个答案:

答案 0 :(得分:4)

我在向ListView添加标题视图时发生这种情况。我通过使用ListView来获取我的项目而不是适配器来解决问题。请参阅ListView.getItemAtPosition(int position)http://developer.android.com/reference/android/widget/ListView.html

答案 1 :(得分:1)

使用

String externalURL = bookList.get(position-1).get("site_detail_url");