gpt4 book ai didi

Android OnLongClickListener 奇怪/不可靠的行为

转载 作者:行者123 更新时间:2023-11-29 02:16:18 31 4
gpt4 key购买 nike

我目前正在与 Android Api Lvl 8 上的 OnLongClickListener 作斗争。

拿这段代码:

this.webView.setOnLongClickListener(new OnLongClickListener() {
@Override
public boolean onLongClick(View v) {
System.out.println("long click");
return true;
}
});

它工作得很好。我可以按 WebView 上的任意位置,每次都会触发事件。

现在看看这个:

this.webView.setOnLongClickListener(new OnLongClickListener() {
@Override
public boolean onLongClick(View v) {
final EditText editText = getUrlTextField();

switch (editText.getVisibility()) {
case View.VISIBLE:
editText.setVisibility(View.GONE);
return true;
case View.GONE:
editText.setVisibility(View.VISIBLE);
return true;
default:
return false;
}
}
});

假设 URL EditText 组件当前可见,它会从显示中消失,并且应该在触发另一个长按事件时再次显示。但是如果你运行这个,当一个人在 WebView 上的任何位置上执行长按时,事件只会发生一次(!)。使事情变得复杂的是,当在网站上的链接上执行长按时,长按会再次起作用...

任何人都可以解释它是否是 sdk 中的错误和/或我对 OnLongClickListener 如何工作的想法有误吗?!? :/

编辑:

我现在已经在 Nexus One 上运行了几个不同的场景并得出以下结论:在运行时更改布局或多或少会杀死 OnLongClickListener...我还没有找到一种方法让它可靠地工作。 ..

如果有人能给我提示,我将不胜感激......我已经无计可施了:(

最佳答案

就我个人而言,每次重新布局后我都会重新设置监听器。

关于Android OnLongClickListener 奇怪/不可靠的行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3573977/

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