Android:让用户编辑数组中的值

时间:2013-11-21 06:03:39

标签: android arrays listview android-edittext row

我正在开发一个应用程序,它以字符串数组的形式存储每个人的多个数据字符串。我可能会将String []作为变量放在Person类中,或者使用HashMaps来存储每个人(尚未决定,但它不应该对问题产生很大的影响)。例如,对于两个人,它可能看起来像:

"John": ["20", "40", "1", "400"]
"Michael": ["11", "3", "09", "98"]

我希望用户能够以图形方式编辑某人的某个数据。例如,用户将查看人员列表并选择他/她想要将第二个元素Michael的数组从“3”编辑为“100”。

我是否应该尝试在ListView中使用onClickListener来检测选择了哪个人的名字,然后为人员阵列中的每个元素动态创建EditText框,以便用户可以单击其中一个EditText框并进行编辑?

或者是否有一种更简单,更简洁的方式来做到这一点?我想对此没有正确的答案,但如果有人可以提出一个有效和简单的方向来从他们的经验中继续,那将对我有很大的帮助。

提前谢谢。

1 个答案:

答案 0 :(得分:1)

您可以将OnItemClickListener设置为ListView,在侦听器中编写一个用于查找所选项的switch-case,以及一个从包含您需要的EditTexts的xml文件中查看它的对话框。其他方式与此类似。用户需要像EditText,spinner等小部件来与您的应用程序进行交互。