有没有办法让菜单呈现从左到右而不是从右到左? 当从导航栏的右键单击时,没关系; 取而代之的是从左边的按钮,它被渲染出屏幕。从导航栏的左侧按钮单击时呈现的菜单si
回答
这里是一个简短的例子,如何使用带有react-navigation的弹出式菜单。该菜单在headerRight
和headerLeft
占位符中均呈现。这是正确显示两侧:
import React from 'react';
import { AppRegistry, Text } from 'react-native';
import { StackNavigator } from 'react-navigation';
import Menu, {
MenuContext,
MenuOptions,
MenuOption,
MenuTrigger
} from 'react-native-popup-menu';
const NavigatorMenu = ({ navigation }) => (
<Menu>
<MenuTrigger text='...' />
<MenuOptions>
<MenuOption
onSelect={() => navigation.navigate('Page2')}
text='Navigate Page 2'
/>
<MenuOption
onSelect={() => navigation.navigate('Page3')}
text='Navigate Page 3'
/>
</MenuOptions>
</Menu>
);
class Home extends React.Component {
static navigationOptions = ({ navigation }) => ({
title: 'Home',
headerRight: <NavigatorMenu navigation={navigation} />,
headerLeft: <NavigatorMenu navigation={navigation} />,
});
render() {
return <Text>Home Page</Text>;
}
}
const Page2 =() => <Text>2nd Page</Text>;
const Page3 =() => <Text>3rd Page</Text>;
const TopStackNavigator = StackNavigator({
Home: { screen: Home },
Page2: { screen: Page2 },
Page3: { screen: Page3 },
});
const App =() => (
<MenuContext>
<TopStackNavigator />
</MenuContext>
);
AppRegistry.registerComponent('examples',() => App);
它在Android上测试了:
- 反应母语:0.37.0
- 反应,本机弹出菜单:0.7.3
- react-navigation:1.0.0-beta
感谢您的努力,我会尝试查看我的代码是否有任何区别,但我不使用这种类型的标题,因为该页面没有它,因为它的标签:)它只是一个“假头”,只是一个普通的3个按钮。我会让你知道的。非常感谢你:) –
@AntonioGallo你可以提供一些最小runnalbe代码,以便我可以重现它。无论如何,随时打开新的问题或更新这一个。 – madox2
我确认它不适用于原生0.44.0,当它在屏幕左侧时;它的好处;也MenuContext需要flex:1工作,否则它搞砸了。我会再次尝试从头开始创建一个新的项目,无需导航器,只需添加弹出式菜单。 “反应”: “16.0.0-alpha.6”, “反应天然的”: “^ 0.44.0”, “反应天然菜单”: “^ 0.20.2”, “react-navigation”:“^ 1.0.0-beta.9” –
已解决。在测试期间,我正在混合react-native-menu和react-native-popup-menu。我都安装了。 Webstorm把我从两个库的引入中拉进来。
所以最后是用'react-本机弹出式menu'? – madox2
@ madox2是的! :) –
- 1. 从侧面菜单中单击时,导航栏未填充状态栏?
- 2. 设置左侧按钮的重用导航栏项目按钮
- 3. Xamarin导航栏后退按钮单击
- 4. 右侧菜单在Swift中单击时打开左侧菜单
- 5. 右侧的菜单和左侧的半透明导航栏上的Logo
- 6. 从现有导航栏下拉菜单
- 7. 左侧的Android导航栏
- 8. 标题,导航栏和左侧菜单一起 - 离子
- 9. Bootstrap导航栏(左侧菜单)未正确对齐顶部
- 10. 导航菜单栏
- 11. 如何将按钮放在菜单栏和按钮的左侧标签
- 12. WPF项目,与按钮的侧面菜单导航
- 13. 按下菜单按钮后jQuery侧边栏sildes按下菜单按钮后
- 14. 使用导航栏左侧的按钮发出问题
- 15. JASidePanel iOS:导航栏上的左侧样式按钮
- 16. 每个导航栏按钮左侧的CSS空白空间
- 17. 导航栏左侧的1个以上按钮
- 18. 左侧导航栏按钮的奇怪间距
- 19. 在Xcode的导航栏左侧添加一个按钮
- 20. 从UIAlertController导航到ViewController按钮单击
- 21. 从导航栏左右栏缩小左侧空间和右侧空间栏按钮项
- 22. 如何在底部创建工具栏时点击菜单按钮(左侧按钮)使用android
- 23. 菜单在引导菜单中点击菜单左侧(约20px在铬)
- 24. 单击按钮和侧面菜单从隐藏中滑出
- 25. Bootstrap菜单在导航栏中单击时不打开
- 26. 菜单栏不切换左侧位置
- 27. 左侧菜单重叠状态栏
- 28. 带左侧标志的水平液体导航菜单
- 29. 透明菜单/导航栏
- 30. 导航栏响应菜单
你能发布任何代码示例来演示你的问题吗? – madox2
@ madox2是的,在这里你是:https://pastebin.com/xvwK7V0B –
你使用哪个导航?反应导航? – sodik