как изменить цвет нижней панели TTNavigator (для веб-ссылки)? - PullRequest
0 голосов
/ 22 сентября 2011

Вот код, который я сделал, чтобы открыть сайт через TTNavigator-

- (IBAction)btnTemp_Click{

    TTNavigator* navigator = [TTNavigator navigator];
    navigator.supportsShakeToReload = YES;
    navigator.persistenceMode = TTNavigatorPersistenceModeAll;

    [navigator openURLAction:[[TTURLAction actionWithURLPath:@"http://www.google.com"] applyAnimated:YES]];
}

, и здесь я смог управлять его элементами панели навигации, цветом и т. Д. -

- (void)addSubcontroller:(UIViewController *)controller animated:(BOOL)animated transition:(UIViewAnimationTransition)transition 
{
    [self.navigationController addSubcontroller:controller animated:animated transition:transition];

    UIButton *btnBack =  [UIButton buttonWithType:UIButtonTypeCustom];
    [btnBack setImage:[UIImage imageNamed:@"navback.png"] forState:UIControlStateNormal];
    [btnBack addTarget:self action:@selector(popThisView) forControlEvents:UIControlEventTouchUpInside];
    [btnBack setFrame:CGRectMake(0, 0, 32, 32)];
    self.navigationItem.leftBarButtonItem = [[UIBarButtonItem alloc] initWithCustomView:btnBack];

    UIBarButtonItem *backBarButtonItem = [[UIBarButtonItem alloc] initWithCustomView:btnBack];
    [controller.navigationItem setLeftBarButtonItem:backBarButtonItem animated:YES];

    [btnBack release];
    TT_RELEASE_SAFELY(backBarButtonItem);
}

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

Кто-нибудь, пожалуйста, помогите.Это должно быть сделано, потому что я видел это в разных цветах во многих приложениях.

Ответы [ 2 ]

1 голос
/ 23 сентября 2011

Изменение цвета и стиля панелей инструментов должно выполняться с использованием класса TTStyleSheet.

Во-первых, вы должны расширить TTDefaultStyleSheet до вашего собственного класса и включить эти функции, чтобы изменить цвета для UINavigationBar.и нижний UIToolbar:

///////////////////////////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////////////////////////
#pragma mark -
#pragma mark TTDefaultStyleSheet


///////////////////////////////////////////////////////////////////////////////////////////////////
- (UIColor*)navigationBarTintColor {
  return RGBCOLOR(0, 60, 30);
}


///////////////////////////////////////////////////////////////////////////////////////////////////
- (UIColor*)toolbarTintColor {
  return RGBCOLOR(0, 60, 30);
}

Затем вы должны загрузить класс таблицы стилей в делегат приложения:

[[[TTStyleSheet setGlobalStyleSheet:[[[StyleSheet alloc] init] autorelease]];
0 голосов
/ 26 сентября 2011

Большое спасибо, Вот что я сделал -

  1. Создан новый класс (просто при создании нового viewcontroller) с имя Stylesheet.h и Stylesheet.m
  2. импортировано #import <Three20Style/Three20Style.h> в .h файле
  3. заменено UIViewController на TTDefaultStyleSheet
  4. в .m файле я положил методы navigationBarTintColor и toolbarTintColor
  5. в файле делегата проекта сначала я импортировал Stylesheet.h, затем в 1-й строке - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions я поместил [TTStyleSheet setGlobalStyleSheet:[[[Stylesheet alloc] init] autorelease]];

ЭТО ЭТО:)

...