- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我已经在谷歌上搜索了几个小时,所以似乎有一堆问题,其中一些有公认的答案,但它们没有意义。
我有一个 ListView 并且我希望在 onTouch 时突出显示一个项目,但是如果用户移动他们的手指并且没有“完成”触摸(他们的手指在抬起时在 View 之外)然后突出显示应该离开。
如果我尝试通过在我的 View
中包含以下内容来使用触摸:
onTouch(View view, MotionEvent ev) {
....logic
//return false so this view keeps consuming the touches
return false;
}
触摸永远不会传播到 ListView
并且 onItemClick
永远不会被调用。我可以通过让我的适配器成为所有 View 的监听器并将“完整”触摸事件传递给适配器,适配器将它传递回 ListView
然后传递它来解决这个问题对任何人来说,但这看起来很可笑。
郑重声明,我要执行的突出显示是一个中等复杂的突出显示(涉及更改多个动态 subview 的背景,所以我不能只使用 StateDrawable
.. .至少我不这么认为,StateDrawables
是否适用于多个 subview ?
iOS 在他们的 UITableViewDelegate
中非常简单地处理这个问题,这在 android 上如此困难似乎很疯狂,我一定是遗漏了什么。感谢您的帮助。
最佳答案
像这样在 res/drawable 中定义一个选择器 'item_sel.xml':
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@color/my_highlight_color" android:state_pressed="true"/>
<item android:drawable="@color/my_default_color"/>
</selector>
其中 my_default_color
和 my_highlight_color
是您定义的颜色,例如在 res/values/colors.xml 中。然后将此选择器设置为您的 item View (不是 ListView)的背景,即:
android:background="@drawable/item_sel.xml"
你应该可以从这里开始了。
关于Android 高亮显示在 ListView 中的 Touch Down,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25412892/
在这个 fiddle 上,函数完美地完成了工作,但我需要稍微调整连接。 该点击甚至需要是父 div 的 addClass(深色/浅色)(true 或 false)。 如果是深色,则添加 Bright
我正在使用 Windows.UI.ViewManagement.UISettings 来获取系统强调色,但该类似乎没有任何亮/暗模式的方法或属性。我找不到此功能的文档,我该如何检测? PS:我正在制作
在使用 iOS 13 在明暗模式之间切换时,我遇到了显示键盘的异常行为。 该 View 有一个 inputAccessoryView 供用户输入消息。当然后在键盘显示的情况下切换亮/暗模式时,亮/暗模
我正在开发一个支持多个主题的 iOS 应用程序。有些主题使用深色背景,有些使用浅色。一些默认图标在深色/浅色背景中不可见。我在 xcassets 中看到一个选项,可以为不同的颜色模式添加图像。我的目标
一些上下文:Sciter (纯 win32 应用程序)已经能够呈现类似 UWP 的 UI: 在深色模式下: 在灯光模式下: Windows 10.1803 在设置小程序中引入深色/浅色开关 as se
我是一名优秀的程序员,十分优秀!