用于显示字段的Android UI最佳实践变为输入字段

时间:2013-01-09 08:49:05

标签: android android-layout android-ui

我正在编写一个Android应用程序,其中列表显示图像和一些其他信息,如标题,地点等...

我是Android生态系统的新手,想知道实现一个列表元素的最佳实践是什么,该列表元素通常显示所提到的信息,并在按下该元素时转换为输入字段。

我是否必须将显示元素(例如TextField)和编辑元素相互叠加并设置为显示或输入可见?一般如何处理?或者我是否完全替换负责列表元素的布局?

我知道,对于文本的简单情况,有一个简单的解决方案可以使EditText字段看起来像一个不可编辑的TextField。但是,我正在寻找一个涵盖更广泛案例的一般答案而不仅仅是TextField

谢谢!

2 个答案:

答案 0 :(得分:1)

你可以使listview视图鳍状肢的元素有两个视图。一个是textview,另一个是edittext。

<ViewFlipper ... <TextView ... /> <EditText ... /> /ViewFlipper>

然后在列表项的onItemClickListener中,您可以调用flipper.showNext();

因此,鳍状肢的工作原理是,它只显示在其中定义的第一个视图,并在随后的showNext()调用中显示其中定义的下一个视图。
因此,如果你有2个元素,它将表现为具有两面的硬币。

答案 1 :(得分:1)

因此,在您的情况下,有几种方法可以实现这一目标。

第一种方法是构建一个包含TextViewEditText的布局,在第一次初始化时,您的编辑文本将不可见。在OnItemClick中,您必须隐藏文本视图并显示包含当前数据值和编辑选项的editext。

我认为更加用户友好的第二种方式是,您可以在AlertDialog之后使用自定义布局显示OnItemClick,您可以更改值并在用户按“是”或不执行任务后更新列表视图他选择否。

这取决于你将采用哪种方式,但我认为第二种选择是更好的选择。