Я работаю над проектом для iPhone iOS4 с Xcode 4.
Я создал UITabBar с тремя UITabBarItem в IB. У меня не UITabBarControllerDelegate в качестве делегата, но MainViewController.
Затем я реализую в MainViewController:
- (void)tabBar:(UITabBar *)tabBar didSelectItem:(UITabBarItem *)item {
switch (item.tag) {
case 1:
[scrollView setContentOffset:(CGPointMake (0,0))];
break;
case 2:
[scrollView setContentOffset:(CGPointMake (320,0))];
break;
case 3:
[scrollView setContentOffset:(CGPointMake (640,0))];
break;
default:
break;
}
NSLog(@"didSelectItem: %d", item.tag);
}
Это работает хорошо, как я хочу.
Но я не могу сделать TabBarItem выбранным при запуске (в viewDidLoad). Я стараюсь
[tabBar setSelectedItem:calc];
[tabBar setSelectedItem:1];
(cal - это ivar из MainViewController) и другие, но ни одна из них не работает. Любое предложение?
Спасибо.
Это MainViewController.h
#import "FlipsideViewController.h"
#import <CoreData/CoreData.h>
#import <QuartzCore/QuartzCore.h>
@interface MainViewController : UIViewController <FlipsideViewControllerDelegate> {
UITabBar *tabBar;
UITabBarItem *diagBarItem;
UITabBarItem *calcBarItem;
}
@property (nonatomic, retain) IBOutlet UITabBar *tabBar;
@property (nonatomic, retain) IBOutlet UITabBarItem *diagBarItem;
@property (nonatomic, retain) IBOutlet UITabBarItem *calcBarItem;
- (void)tabBar:(UITabBar *)tabBar didSelectItem:(UITabBarItem *)item;
@end