繁体   English   中英

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

[英]onItemClick listView off by one, and last item clicked causes crash?

当我为列表视图设置onClickListener并设置每个列表视图单元的位置似乎都为一个时,并且最后一个列表视图单元导致崩溃时,就会出现该错误。 例如,如果我有一个包含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);


            }
        });

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

采用

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM