一些疑难问题解决方法
2015-12-03 23:25
309 查看
1.crash:Android Exception 8(Couldn't read row 0, col -1 from CursorWindow)
(1)原因1:字段不正确
c.getString(c.getColumnIndex("_ID")//字段名称不正确
(2)query的中projection 字段没有补全
public final Cursor query(Uri uri, String[] projection, String selection, String[] selectionArgs, String sortOrder);
最好是将projection置为null,否则cursor仅仅可以查询projection中的字段;
2.当Listview有header时,onItemClick里的position不正确
当给ListView加了一个HeaderView后(代码如下),我们发现,onItemClick方法里的position参数的值不是我们所期望的,比如点击ListView的第一行,我们期望的position是0,可是实际上却是1,也就是说,它是从Header而不是从第一行开始计数的。
解决方法;
把onItemClick改成下面这样,就可以了
(1)原因1:字段不正确
c.getString(c.getColumnIndex("_ID")//字段名称不正确
(2)query的中projection 字段没有补全
public final Cursor query(Uri uri, String[] projection, String selection, String[] selectionArgs, String sortOrder);
最好是将projection置为null,否则cursor仅仅可以查询projection中的字段;
2.当Listview有header时,onItemClick里的position不正确
当给ListView加了一个HeaderView后(代码如下),我们发现,onItemClick方法里的position参数的值不是我们所期望的,比如点击ListView的第一行,我们期望的position是0,可是实际上却是1,也就是说,它是从Header而不是从第一行开始计数的。
解决方法;
把onItemClick改成下面这样,就可以了
@Override public void onItemClick(AdapterView<?> parent, View v, int position, long id) { doSomething(parent.getAdapter().getItem(position)); }
相关文章推荐
- OAuth在WebApi
- JavaScript闭包初探
- JavaScript基础笔记一
- 第一篇博客
- QT链接mysql驱动程序出现的问题详解
- Java 8.0 的新特性——default()方法介绍
- 利用微信机器人,自动发送验证码
- 支付宝接口接入方法 步骤十分详细
- lightoj1380 Teleport
- 第二个spring冲刺第10天(及第二阶段总结)
- perl 学习杂项笔记
- Linux 了解 RPM
- Telnet自动登录网络设备
- MDIO/MDC接口
- equals()与hashCode()方法协作约定
- 基于Bootstrap jQuery.validate Form表单验证实践
- poj1733Parity game
- iOS UI基础-17.0 UILable之NSMutableAttributedString
- 二叉树遍历
- 响应式布局(Responsive Layout)/流式布局(Fluid Layout)/自适应布局(Adaptive)