gpt4 book ai didi

android - ListView 中的 EditText 焦点

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:27:54 25 4
gpt4 key购买 nike

我有一个 ListView,在那个 ListView 中,我有一个包含一些 TextViewsEditTexts 的行.当我按下行上的任意位置时,我希望 EditText 获得焦点,以便可以输入文本。

问题是我无法让它工作。当我将 EditText 放在 ListView 中时,当我单击 ListView 时,OnItemClick 不会响应。

我尝试在 EditText 上使用 focusable="false" 并且它允许我再次点击 ListView 但我无法获得即使在将 focusable 设置为 true 之后,EditText 也能获得焦点。接下来我尝试在 ListView 中使用 android:descendantFocusability="beforeDescendants" 但它似乎没有做出任何改变,它仍然无法工作。

有人知道我可以做些什么来让它发挥作用吗?

最佳答案

试试这个,它应该让你点击一行并聚焦 EditText(从这个 SO Answer 修改):

public void onItemSelected(AdapterView<?> listView, View view, int position, long id) 
{
EditText yourEditText = (EditText) view.findViewById(R.id.youredittextid);
listView.setDescendantFocusability(ViewGroup.FOCUS_AFTER_DESCENDANTS);
yourEditText.requestFocus();
}

public void onNothingSelected(AdapterView<?> listView)
{
// onNothingSelected happens when you start scrolling, so we need to prevent it from staying
// in the afterDescendants mode if the EditText was focused
listView.setDescendantFocusability(ViewGroup.FOCUS_BEFORE_DESCENDANTS);
}

关于android - ListView 中的 EditText 焦点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11414170/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com