Как отключить кнопки панели инструментов TTNavigator?

Пожалуйста, обратитесь к этому посту - как изменить цвет нижней панели TTNavigator (для веб-ссылки)?

Теперь я должен отключить опцию "Открыть в Safari" для того же контроллера. Пожалуйста, предложите мне способ. Я не смог найти, чтобы сделать это, используя стили еще. Я знаю, что это возможно, потому что я видел вариант в нескольких приложениях.

Пожалуйста помоги...

1 ответ

Решение

По умолчанию TTNavigator будет пересылать любые URL-адреса, которые ему не соответствуют, в TTWebController.

Поэтому, если вы хотите изменить веб-представление, вам нужно будет создать подкласс TTWebController для вашего собственного класса и добавить отображение в делегат приложения:

Чтобы удалить кнопку действия "Открыть в safar", попробуйте добавить эту функцию в свой пользовательский TTWebController, который вы подкласс:

///////////////////////////////////////////////////////////////////////////////////////////////////
- (void)loadView {
  [super loadView];

   TT_RELEASE_SAFELY(_toolbar);

   _toolbar = [[UIToolbar alloc] initWithFrame:
              CGRectMake(0, self.view.height - TTToolbarHeight(),
                         self.view.width, TTToolbarHeight())];
  _toolbar.autoresizingMask =
  UIViewAutoresizingFlexibleTopMargin | UIViewAutoresizingFlexibleWidth;
  _toolbar.tintColor = TTSTYLEVAR(toolbarTintColor);
  _toolbar.items = [NSArray arrayWithObjects:
                    _backButton,
                    space,
                    _forwardButton,
                    space,
                    _refreshButton,
                    nil];
  [self.view addSubview:_toolbar];

}

И включите в свой делегат приложения правило сопоставления "ловить все":

    [map from:@"*" toViewController:[CustomWebController class]];
Другие вопросы по тегам