[英]Have an element of the list clicked on load activity Monodroid
我有一点问题。 当我从列表中选择一个项目时,该项目将被选中并被着色,直到一切正确。 然后,当我转到另一项活动并回来时,我希望再次选择列表中的项目。 要总结选择活动时重新加载列表中的一个项目,ListView必须知道您要单击该项目的MonoDroid
对不起,英语不好,我希望我能解释一下。 谢谢
您想要的功能不是Android的正常行为,当手机处于触摸模式时且使用的API级别小于11。
因此,最简单的方法是将应用程序定位为API 11或更高版本,并将以下内容添加到列表项布局中:
android:background="?android:attr/activatedBackgroundIndicator"
您还必须在列表视图上设置ChoiceMode
:
listView.ChoiceMode = ChoiceMode.Single;
现在要记住返回ListView
时所选项目的位置,您需要将其保存在某个地方。 因此,在ItemClick
事件处理程序中,您可以将位置保存到SharedPreferences
如下所示:
var prefs = GetPreferences (FileCreationMode.Append);
var editor = prefs.Edit();
editor.PutInt("ListViewSelectedItem", args.Position);
editor.Commit();
并在使用ListView
返回到Activity时设置突出显示的项目,可以将以下代码放在OnResume
:
var prefs = GetPreferences(FileCreationMode.Append);
var val = prefs.GetInt("ListViewSelectedItem", 0);
listView.SetItemChecked(val, true);
鉴于可以从OnResume
方法访问listView
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.