Возможно создать UITabBarController с пользовательскими изображениями, нажатыми или не нажатыми? - PullRequest
2 голосов
/ 11 июля 2009

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

По сути, я хочу иметь собственные изображения для каждой кнопки панели вкладок. Я нажимал и не давил изображения. Вместо того, чтобы использовать выделение, которое создается над текущим значком, я хочу, чтобы нажатое изображение отображалось. То, что я смог сделать, это создать категорию UITabBar с помощью пользовательского метода drawRect, который в основном рисует все мои собственные значки панели вкладок. Затем я инициализирую такое же количество UITabBarItems без указания изображения или заголовка любого вида, которые затем добавляю в массив элементов. Это позволяет мне иметь свои значки, а затем просто накладывает на них блик.

Это нормально, я думаю, но мне бы очень хотелось, чтобы выглядела нажатая кнопка.

Вот код, который я использую для рисования панели вкладок:

@implementation UITabBar (CustomImage)


-(void)drawRect:(CGRect)rect
{
    UIImage *image = [UIImage imageNamed:@"TabBar.png"];
    [image drawInRect:CGRectMake(0,0,320,50)];
}

@end

И затем я инициализирую элементы панели вкладок следующим образом:

UITabBarItem *homeTabBarItem = [[UITabBarItem alloc] init];

Если кто-нибудь знает, как я это сделаю, это будет с благодарностью. Пожалуйста, имейте в виду, что я все еще относительно новичок в Objective-C, поэтому я несколько озадачен тем, как бы я правильно подклассифицировал что-либо в этой точке.

Функциональность, которую я ищу, будет похожа на ту, которую RougeSheep смог выполнить с помощью Postage: http://postage.roguesheep.com/ Они проделали потрясающую работу, и я хотел бы подражать этому.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...