android - 没有用于反应导航 HeaderBackButton 的 onLongPress
问题描述
我正在尝试在自定义标题后退按钮上添加 onLongPress 功能,但这似乎不是现有的道具。有办法解决吗?
我想要这个功能,因为我的应用程序是为患有帕金森病的人设计的,所以对于患有震颤的用户,我可以选择只允许 onLongPress (这样连续的按键将被忽略并且可以避免失火)。因此,如果启用了长按选项,onPress 功能将被忽略,只有 onLongPress 可以工作。如果该选项尚未启用,则 onPress 和 onLongPress 都应该工作。
我为标题制作了其他自定义按钮,但我希望后退按钮维护导航堆栈,因此它可以返回到用户来自的页面。有没有办法添加标准的可触摸不透明度,具有与 HeaderBackButton 相同的 onPress 功能,所以我可以添加 onLongPress 功能。
解决方案
您可以在导航配置中添加headerLeft
道具,给定一个函数传递给它,提供参数,例如(onPress, label, ...)
. 您可以onPress
在自定义组件的onLongPress
函数中调用它以保持相同的功能。
这是一个示例代码:
navigationOptions: {
headerLeft: (onPress) => {
return <TouchableOpacity ... onLongPress={onPress}>...</TouchableOpacity>
}
}
您可以在此处阅读有关此内容的更多信息。
推荐阅读
- android - 使用 AppAuth-Android 和使用 IdS4 的 aspnet 核心进行身份验证
- javascript - 回调函数无法访问父函数范围内的变量
- javascript - 如何分离日期输入引导日期范围选择器
- airflow - Airflow: how to use xcom_push and xcom_pull in non-PythonOperator
- python - 通过添加 2 个 1D 数组的每个组合在 Python 中创建 2D 矩阵
- python - Flask 不会解释 css、js 文件
- python - 在 Python 中使用 Twitter 搜索 API 苦苦挣扎
- android - 类切换后startActivity不工作
- elasticsearch - JestClient 的 SocketTimeOutException 和 ConnectionClosedException
- alpha - GIMP 将图像打包成 alpha(将灰度图像粘贴到 alpha 中)