callstack / callstack/react-native-bottom-tabs

[iOS] Tabs don't fire tabLongPress event on iOS 26

未关闭
#573 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看
bug
主要语言
TypeScript
星标
1.5k
派生
109
平均合并
11 小时 44 分钟
30 天内合并 PR
8

描述

### Before submitting a new issue

- [x] I tested using the latest version of the library, as the bug might be already fixed.
- [x] I tested using a [supported version](https://github.com/reactwg/react-native-releases/blob/main/docs/support.md) of react native.
- [x] I checked for possible duplicate issues, with possible answers.

### Bug summary

Tabs don't fire `tabLongPress` event on iOS 26. However, it does work on iOS 18.

### Library version

1.4.0

### Environment info

```shell
"react-native": "0.86.3",
"expo": "~57.0.20",
"expo-router": "~57.0.19",
"react-native-bottom-tabs": "^1.4.0",
"@bottom-tabs/react-navigation": "^1.4.0",
```

### Steps to reproduce

1. Create an expo app with expo router
2. Install bottom-tabs
3. Add a `tabLongPress` listener to a tab

### Reproducible sample code

```tsx
import {
createNativeBottomTabNavigator,
type NativeBottomTabNavigationEventMap,
type NativeBottomTabNavigationOptions,
} from '@bottom-tabs/react-navigation'
import { type TabNavigationState, withLayoutContext } from 'expo-router'
import { type ParamListBase } from 'expo-router/react-navigation'

const { Navigator } = createNativeBottomTabNavigator()

const Tabs = withLayoutContext<
NativeBottomTabNavigationOptions,
typeof Navigator,
TabNavigationState,
NativeBottomTabNavigationEventMap
>(Navigator)

function App() {



}
```

贡献指南

打开贡献指南

调研方向

首先在 iOS 26 上使用 react-native-bottom-tabs 1.4.0 运行提供的 Expo Router 复现,然后在 iOS 18 上对比相同的 tabLongPress listener。跟踪 tab 事件从复现的 listener 进入库和原生 iOS 实现的路径。当 listener 在 iOS 26 上像在 iOS 18 上一样触发,并且现有测试结构支持时补充回归覆盖,即表示完成。

由索引模型根据 Issue 内容生成。

评估

技术栈
ios, react-native, typescript
领域
mobile
Issue 类型
缺陷
难度
4/5
预计耗时
3-5 天
活跃度
活跃
描述清晰度
基本清楚
新手友好度
48/100

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。