import React, { useState } from 'react';
import { Text, View, TouchableOpacity } from 'react-native';
import { Tabs, Space, OptionGroup } from '@xrnjs/ui';
import { TabType } from '../enum';
import { IconMAScreen1 } from '../../../icons';
import Card from '_global/Card';
import styles from './style';
const { TabPane } = Tabs;
const AdvancedFeatures = () => {
const [isExpanded, setIsExpanded] = useState(false);
const [secondaryTab, setSecondaryTab] = useState('all');
const primaryTabs = [
{ key: 'home', label: '首页', hasSecondary: true },
{ key: 'category', label: '分类', hasSecondary: true },
{ key: 'cart', label: '购物车', hasSecondary: false },
{ key: 'profile', label: '我的', hasSecondary: false },
];
const secondaryOptions = {
home: [
{ label: '全部', value: 'all' },
{ label: '推荐', value: 'recommend' },
{ label: '热门', value: 'hot' },
{ label: '最新', value: 'latest' },
],
category: [
{ label: '全部分类', value: 'all' },
{ label: '数码电器', value: 'electronics' },
{ label: '服装鞋帽', value: 'clothing' },
{ label: '食品饮料', value: 'food' },
],
};
const visibleTabs = isExpanded ? primaryTabs : primaryTabs.slice(0, 2);
const expandIcon = (
setIsExpanded(!isExpanded)}
>
{isExpanded ? '收起' : '展开'}
);
return (
带后置插槽
在标签栏右侧添加自定义内容
}
suffixWidth={40}
>
首页内容
右侧有图标按钮
分类内容
我的内容
可展开标签栏
支持展开/收起更多标签
{visibleTabs.map((tab) => (
{tab.label}内容
当前显示 {visibleTabs.length} 个标签
))}
二级标签组合
主标签 + 二级选项的组合使用
首页 -{' '}
{
secondaryOptions.home.find(
(opt) => opt.value === secondaryTab
)?.label
}
这里显示对应的内容
分类 -{' '}
{
secondaryOptions.category.find(
(opt) => opt.value === secondaryTab
)?.label
}
这里显示对应的分类内容
购物车内容
无二级标签
自定义标签栏高度
调整标签栏高度以适应不同设计需求
标签栏高度为 60px
适用于需要更大点击区域的场景
标签二内容
标签三内容
);
};
export default AdvancedFeatures;