【发布时间】:2011-05-24 23:17:41
【问题描述】:
我喜欢直观的 UI;每个屏幕都应该自然而隐蔽地引导用户进入应用程序的下一步。除此之外,我努力让事情尽可能地令人困惑和困惑。
开个玩笑:-)
我有三个TableRows,每个都包含一个只读且不可聚焦的 EditText 控件,然后在其右侧有一个按钮。每个按钮启动相同的活动,但使用不同的参数。用户在那里进行选择,子活动结束,用用户的选择填充适当的EditText。
这是经典的级联值机制;每个选择都会缩小下一个选择的可用选项,等等。因此,我将禁用下每一行上的两个控件,直到当前行上的 EditText 包含一个值。
我需要按照以下优先顺序做两件事之一:
- 单击按钮时,立即移除焦点,而不将焦点设置到其他按钮
- 在活动开始时将焦点设置到第一个按钮
子活动返回后问题出现;被点击的按钮保持焦点。
回复:上面的 #1 - 似乎没有 removeFocus() 方法或类似的方法
Re: 上面的#2 - 我可以使用requestFocus() 将焦点设置到下一行的按钮上,这在子活动返回后有效,但由于某种原因它在父活动的 @ 中不起作用987654325@.
我需要在任一方向上保持 UI 一致性——在子活动完成后没有按钮具有焦点,或者每个按钮根据其在逻辑流中的位置获得焦点,包括在任何按钮之前的第一个(也是唯一的)活动按钮选择。
【问题讨论】: