android 的 getSelectedItemPosition() 方法的问题
在一个AlertDialog中使用了setSingleChoiceItems()方法设置了单选,然后在AlertDialog的setButton()方法中设置了第一个按钮...
在一个AlertDialog中使用了setSingleChoiceItems()方法设置了单选,然后在AlertDialog的setButton()方法中设置了第一个按钮的响应函数,这时如下代码会出问题:
Log.e("!",dialog.getListView().getAdapter().getItem(1).toString());
//上面这句取到了列表数组中相对应的值
Log.e("!",dialog.getListView().getSelectedItemPosition()+"");
// 这句返回的值为-1 无论当前选定了什么
这是为啥子呢? 展开
Log.e("!",dialog.getListView().getAdapter().getItem(1).toString());
//上面这句取到了列表数组中相对应的值
Log.e("!",dialog.getListView().getSelectedItemPosition()+"");
// 这句返回的值为-1 无论当前选定了什么
这是为啥子呢? 展开
4个回答
展开全部
这是一个默认值,不是手动去选择某一个item的position值,这个是在控件初始化完成后,这个值就已经是定死的,不管选择哪个这个值都是既定的值。
这个是会在选择其中一个item的时候会改变,如果在点击一个item之后,再Log.e("!",dialog.getListView().getSelectedItemPosition()+"");
应该可以看到是现在想要的值一定是在触发这个item被选中的事件中。
dialog.getListView().getSelectedItemPosition()
getListView是返回了listview
然后调用listview的getSelectedItemPosition,这个不是点单选以后返回选中,而是指的那一个条目的时候选中的。
可以去看看api文档说明关于listview。
这个是会在选择其中一个item的时候会改变,如果在点击一个item之后,再Log.e("!",dialog.getListView().getSelectedItemPosition()+"");
应该可以看到是现在想要的值一定是在触发这个item被选中的事件中。
dialog.getListView().getSelectedItemPosition()
getListView是返回了listview
然后调用listview的getSelectedItemPosition,这个不是点单选以后返回选中,而是指的那一个条目的时候选中的。
可以去看看api文档说明关于listview。
展开全部
这是一个默认值,不是你手动去选择某一个item的position值,这个是在控件初始化完成后,这个值就已经是定死的,不管你选择哪个这个值都是既定的值。
这个是会在你选择其中一个item的时候会改变,但是这个时候你应该是已经去处理别的事情了,如果你在点击一个item之后,再Log.e("!",dialog.getListView().getSelectedItemPosition()+"");你应该可以看到是你现在想要的值,注意,一定是在触发这个item被选中的事件中。
这个是会在你选择其中一个item的时候会改变,但是这个时候你应该是已经去处理别的事情了,如果你在点击一个item之后,再Log.e("!",dialog.getListView().getSelectedItemPosition()+"");你应该可以看到是你现在想要的值,注意,一定是在触发这个item被选中的事件中。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
dialog.getListView().getSelectedItemPosition()
getListView是返回了listview
然后你调用listview的getSelectedItemPosition,这个不是你点单选以后返回给你选中,而是指的你点那一个条目的时候选中的。
你可以去看看api文档说明关于listview的
getListView是返回了listview
然后你调用listview的getSelectedItemPosition,这个不是你点单选以后返回给你选中,而是指的你点那一个条目的时候选中的。
你可以去看看api文档说明关于listview的
追问
public int getSelectedItemPosition ()
Since: API Level 1
Return the position of the currently selected item within the adapter's data set
Returnsint Position (starting at 0), or INVALID_POSITION if there is nothing selected.
这不是说返回adapter数据集中的当前选择的item么?
返回的是从0开始的位置,当没有选择的时候返回INVALID_POSITION
……好像明白了,它返回的是不是我那个按钮Position值?
追答
当你listview某个item被选中的时候,这个接口能返回那个位置的position,这个item被选中指的不是你的单选框勾上,而是指整条条目处于选中状态。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
具体神秘问题,说清楚啊
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |