React-Native-Navigation Alignment - PullRequest
0 голосов
/ 16 мая 2018

Я использую реагирующую нативную навигацию в своем текущем собственном приложении реакции, и у меня возникла проблема.В моем приложении есть навигационная панель с левой кнопкой в ​​качестве переключателя для меню ящика, а правая кнопка - это логотип, ссылающийся на веб-сайт нашей компании.

Логотип устанавливается в навигационной панели следующим образом:

icon: require('../logos/BB-Icon.png')

При просмотре приложения на Android я получаю следующий результат , как показано здесь .

Однако на iOS я получаю this .

Я искал документы и, похоже, не могу найти ничего, что будет центрировать панель навигации в iOS так же, как Android.

Среда:

  • React NativeВерсия навигации: 1.1.444
  • React Собственная версия: 0.52.0
  • Информация об устройстве: Android: Samsung Galaxy S9 под управлением Android 8.0.0 // iOS: симулятор iPhone X под управлением iOS 11.3

1 Ответ

0 голосов
/ 19 апреля 2019

В 2.17 вы можете изменить lib/ios/RNNUIBarButtonItem.m следующим образом:

-(instancetype)init:(NSString*)buttonId withIcon:(UIImage*)iconImage {
    UIButton* button = [[UIButton alloc] init];
    [button addTarget:self action:@selector(onButtonPressed) forControlEvents:UIControlEventTouchUpInside];
    [button setImage:iconImage forState:UIControlStateNormal];
    [button setFrame:CGRectMake(0, 0, iconImage.size.width, iconImage.size.height)];
    self = [super initWithCustomView:button];
    self.buttonId = buttonId;
// Align left or right here.
    button.contentHorizontalAlignment = UIControlContentHorizontalAlignmentLeft;
    return self;
}

Я не знаю, сможете ли вы сделать что-то подобное в версии 1.x.Надеюсь, это поможет.

...