Sharekit настроить цвет кнопки modelview

#button #customization #sharekit

#кнопка #настройка #sharekit

Вопрос:

Обожаю Sharekit

Для панелей инструментов созданы пользовательские фоны, но вы хотите изменить цвет кнопки в модальном представлении, которое отображает, какой ссылкой поделиться (т. Е. Представление модели ссылки Twitter)…просто не могу найти, в какой файл добавить мой штрих-код кнопки настройки навигационной панели

Пытался, но, похоже, не могу найти правильную комбинацию … кто-нибудь знает?

 - (void)viewDidLoad
{
    [super viewDidLoad];
    /*
     Colour the Nav Bar buttons
     */
    [self.navigationController.navigationBar applyCustomTintColor];
}
  

Ответ №1:

В SHKConfig.h

Изменить

 #define SHKBarTintColorRed      219 /255.0 
#define SHKBarTintColorGreen    83 /255.0  
#define SHKBarTintColorBlue     106 /255.0 
  

Добавьте / 255.0 к своему номеру (номерам)

Это предварительно делит наш цвет RGB на процент с плавающей запятой для UIColor

В SHK.m

Изменить функцию showViewController

 // Wrap the view in a nav controller if not already
if (![vc respondsToSelector:@selector(pushViewController:animated:)])
{
    UINavigationController *nav = [[[UINavigationController alloc] initWithRootViewController:vc] autorelease];

    if ([nav respondsToSelector:@selector(modalPresentationStyle)])
        nav.modalPresentationStyle = [SHK modalPresentationStyle];

    if ([nav respondsToSelector:@selector(modalTransitionStyle)])
        nav.modalTransitionStyle = [SHK modalTransitionStyle];

    nav.navigationBar.barStyle = nav.toolbar.barStyle = [SHK barStyle];

    // Added code
    UIColor* c = [UIColor colorWithRed:SHKBarTintColorRed green:SHKBarTintColorGreen blue:SHKBarTintColorBlue alpha:1.0];
    [(UINavigationController *)vc navigationBar].tintColor = c;
    // End added code

    [topViewController presentModalViewController:nav animated:YES];            
    self.currentView = nav;
}

// Show the nav controller
else
{       
    if ([vc respondsToSelector:@selector(modalPresentationStyle)])
        vc.modalPresentationStyle = [SHK modalPresentationStyle];

    if ([vc respondsToSelector:@selector(modalTransitionStyle)])
        vc.modalTransitionStyle = [SHK modalTransitionStyle];

    [topViewController presentModalViewController:vc animated:YES];
    [(UINavigationController *)vc navigationBar].barStyle = 
    [(UINavigationController *)vc toolbar].barStyle = [SHK barStyle];

    // Added code
    UIColor* c = [UIColor colorWithRed:SHKBarTintColorRed green:SHKBarTintColorGreen blue:SHKBarTintColorBlue alpha:1.0];
    [(UINavigationController *)vc navigationBar].tintColor = c;
    // End added code

    self.currentView = vc;
}
  

Это изменяет цвет всех кнопок панели навигации (включая кнопку Отмены)

Виола!