gpt4 book ai didi

android - 如何在不实现 OnFocusChangeListener 的情况下检测 EditText 上的焦点丢失事件

转载 作者:行者123 更新时间:2023-11-30 01:31:59 24 4
gpt4 key购买 nike

我正在使用一个包含 EditText 的库,我需要检测此 EditText 何时失去焦点。该库已在此 EditText 上添加了一个 OnFocusChangeListener,因此我无法覆盖此监听器,因为它会破坏功能。

有没有其他方法可以检测用户何时失去对 EditText 的关注?

解决方法:

ViewTreeObserver viewTreeObserver = getViewTreeObserver();
viewTreeObserver.addOnGlobalFocusChangeListener(new ViewTreeObserver.OnGlobalFocusChangeListener() {
@Override
public void onGlobalFocusChanged(View oldFocus, View newFocus) {
//oldFocus could be null
if (oldFocus == null || !oldFocus.equals(myEditText)) {
return;
}
doYourThing();
}
});

最佳答案

您可以在 ViewTreeObserver 类中使用 OnGlobalFocusChangeListener。它公开了一个方法onGlobalFocusChanged(View oldFocus, View newFocus)。您只需要检查 oldFocus 是否是您感兴趣的 View 。

关于android - 如何在不实现 OnFocusChangeListener 的情况下检测 EditText 上的焦点丢失事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35607568/

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