作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
在 Native IOS 中,在导航界面( http://www.appcoda.com/ios-programming-101-how-to-hide-tab-bar-navigation-controller/ )中隐藏选项卡栏似乎很容易,但在 React Native 中,实现这一点似乎并不那么容易。即使我覆盖了 按下时隐藏底部栏 的方法RCTWrapperViewController :
- (BOOL) hidesBottomBarWhenPushed
{
return YES;
}
最佳答案
这是基于 this issue in React-Native 的更深入的答案
在 Xcode 的左侧边栏中,选择“项目管理器”(文件夹图标)以查看文件结构。
您正在寻找的特定文件夹位于:
[YourAppName] > 库 > React.xcodeproj > React > View
RCTNavItem.h
#import "RCTComponent.h"
@interface RCTNavItem : UIView
//add this line:
@property (nonatomic, assign) BOOL showTabBar;
@implementation RCTNavItemManager
RCT_EXPORT_MODULE()
- (UIView *)view
{
return [RCTNavItem new];
}
// add this line:
RCT_EXPORT_VIEW_PROPERTY(showTabBar, BOOL)
- (void)navigationController:(UINavigationController *)navigationController
willShowViewController:(__unused UIViewController *)viewController
animated:(__unused BOOL)animated
{
// Add these two lines:
RCTWrapperViewController *thisController = (RCTWrapperViewController *)viewController;
navigationController.tabBarController.tabBar.hidden = !thisController.navItem.showTabBar;
render() {
return (
<NavigatorIOS
style={styles.container}
client={this.props.client}
initialRoute={{
title: 'Home',
component: HomeScreen,
navigationBarHidden: true,
showTabBar: false,
passProps: { ...},
}}/>
);
}
}
关于react-native - 如何在 React Native 的导航界面中隐藏标签栏?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30278537/
我是一名优秀的程序员,十分优秀!