原因
在使用react-navigation设置标题栏的标题过程中发现,在iphone上标题栏的标题为居中状态,而在Android上则是居左对齐。当有headerLeft或者headerRight设置后,中间的标题会根据剩余的空间居中显示。所以需要我们修改源码,进行适配。
修改源码
- 【node_modules -- react-navigation -- src -- views -- Header.js】的326行代码处,修改为如下:
title: {
bottom: 0,
left: TITLE_OFFSET,
right: TITLE_OFFSET,
top: 0,
position: 'absolute',
alignItems: 'center',
- 注释掉170行的内容
// if (Platform.OS === 'android') {
// if (!options.hasLeftComponent) {
// style.left = 0;
// }
// if (!options.hasRightComponent) {
// style.right = 0;
// }
// } }
网友评论