gpt4 book ai didi

Android Bug,单击 EditText 键盘完成后 RecyclerView 打开全键盘

转载 作者:行者123 更新时间:2023-11-30 01:38:33 28 4
gpt4 key购买 nike

出于某种原因,我的 EditText 表现得很奇怪。

我的编辑文本包含在滚动的 RecyclerView 中。当我点击编辑文本时,小键盘显示得很好,当点击小键盘上的“完成”时,小键盘关闭但显示完整的键盘。有没有想过问题是什么或防止全键盘出现的方法?谢谢。

EDIT::我设法解决了 Done 问题,但是当键盘打开并且我向下滚动 recyclerview 时,键盘关闭并显示完整键盘。可能是以下答案之一中提到的焦点问题。

public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
if (actionId == EditorInfo.IME_ACTION_DONE) {
InputMethodManager imm = (InputMethodManager) v.getContext().getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(v.getWindowToken(), 0);
invAdded.clearFocus();
return true;
}
return false;
}

原创::

  <EditText
android:id="@+id/di_inventory_added"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="0.2"
android:background="@android:color/transparent"
android:inputType="numberDecimal"
android:singleLine="true"
android:imeOptions="actionDone"
/>

和容器布局

<android.support.v7.widget.RecyclerView
android:layout_below="@id/include"
android:id="@+id/daily_inventory_recycle_view"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />

还有actioneditlistener

  invAdded.setOnEditorActionListener(new TextView.OnEditorActionListener() {
@Override
public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
if (actionId == EditorInfo.IME_ACTION_DONE) {

invAdded.clearFocus();
}
return false;
}
});

enter image description here

enter image description here

最佳答案

看起来你没有在 onEditorAction 回调方法中返回正确的 bool 值。

如果你想隐藏键盘,你必须通过在 onEditorAction 方法中返回 true 来告诉系统你已经消耗了 done 按钮事件。

invAdded.setOnEditorActionListener(new TextView.OnEditorActionListener() {
@Override
public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
if (actionId == EditorInfo.IME_ACTION_DONE) {

invAdded.clearFocus();
}
return true; // return true(event consumed)
}
});

我还没有测试过。这只是一个猜测,您可以尝试一下。希望对您有所帮助。

关于Android Bug,单击 EditText 键盘完成后 RecyclerView 打开全键盘,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34805627/

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