import React, { useState, useRef } from 'react'; import { Text, View } from 'react-native'; import { Tabs, Space, Button } from '@xrnjs/ui'; import { TabType } from '../enum'; import { IconMAScreen1 } from '../../../icons'; import Card from '_global/Card'; import styles from './style'; const { TabPane } = Tabs; interface ChangeTabProps { changeTab: (key: string) => void; } const ScrollableAndDynamic = () => { const [activeKey, setActiveKey] = useState('1'); const [showExtra, setShowExtra] = useState(false); const tabsRef = useRef(null); const handleChange = (key: string) => { setActiveKey(key); }; const jumpToTab = () => { tabsRef.current?.changeTab('5'); }; const toggleExtra = () => { setShowExtra(!showExtra); }; const dynamicTabs = [ { key: '1', tab: '标签一', content: '内容一' }, { key: '2', tab: '标签二', content: '内容二' }, { key: '3', tab: '标签三', content: '内容三' }, showExtra && { key: '4', tab: '动态标签', content: '动态内容' }, ].filter(Boolean) as { key: string; tab: string; content: string }[]; return ( 可滚动标签 当标签过多时支持横向滚动 } > 标签一内容 标签二内容 标签三内容 标签四内容 标签五内容 标签六内容 标签七内容 标签八内容 滑动切换 支持左右滑动切换标签页内容 } > 首页内容 - 当前激活:{activeKey} 分类内容 - 当前激活:{activeKey} 购物车内容 - 当前激活:{activeKey} 我的内容 - 当前激活:{activeKey} 设置内容 - 当前激活:{activeKey} 动态标签 动态增减标签页 {dynamicTabs.map((item) => ( {item.content} ))} ); }; export default ScrollableAndDynamic;