в моем приложении у меня есть 3 UIViews (3 .xib) и 3 кнопки для каждого вида по одной кнопке, но проблема в том, что я не знал, как программировать представления всегда, у меня есть ошибки и предупреждение, я пытался заставить вид отображатьсякак кнопка информации в служебном приложении, но я должен вернуться к исходному виду, и я столкнулся с проблемой с делегированием
Так есть ли способ сделать вид, нажав на его кнопку точно так же, как TabBareController, потому что Я хочу, чтобы кнопки всегда присутствовали в каждом представлении , и я не хочу использовать приложение, которое использует панель вкладок.
Спасибо
Редактировать:
в firstViewControler.m
- (void)viewDidLoad {
//Load the image
UIImage *buttonImage = [UIImage imageNamed:@"bt_tweet_S.png"];
//create the button and assign the image
UIButton *tweet = [UIButton buttonWithType:UIButtonTypeCustom];
[tweet setImage:buttonImage forState:UIControlStateNormal];
//sets the frame of the button to the size of the image
tweet.frame = CGRectMake(0, 0, buttonImage.size.width, buttonImage.size.height);
//creates a UIBarButtonItem with the button as a custom view
UIBarButtonItem *tweetbar = [[UIBarButtonItem alloc] initWithCustomView:tweet];
tweetbar.tag = 1;
//Load the image
UIImage *pageImage = [UIImage imageNamed:@"bt_web.png"];
//create the button and assign the image
UIButton *page = [UIButton buttonWithType:UIButtonTypeCustom];
[page setImage:pageImage forState:UIControlStateNormal];
[page addTarget:self action:@selector(flipAction:) forControlEvents:UIControlEventTouchUpInside];
//sets the frame of the button to the size of the image
page.frame = CGRectMake(0, 0, pageImage.size.width, pageImage.size.height);
//creates a UIBarButtonItem with the button as a custom view
UIBarButtonItem *pagebar = [[UIBarButtonItem alloc] initWithCustomView:page];
pagebar.tag = 2;
//Load the image
UIImage *infoImage = [UIImage imageNamed:@"bt_info.png"];
//create the button and assign the image
UIButton *infoButton = [UIButton buttonWithType:UIButtonTypeCustom];
[infoButton setImage:infoImage forState:UIControlStateNormal];
[infoButton addTarget:self action:@selector(showInfo:) forControlEvents:UIControlEventTouchUpInside];
//sets the frame of the button to the size of the image
infoButton.frame = CGRectMake(0, 0, infoImage.size.width, infoImage.size.height);
//creates a UIBarButtonItem with the button as a custom view
UIBarButtonItem *infoBar = [[UIBarButtonItem alloc] initWithCustomView:infoButton];
//infoBar.target= self;
//infoBar.action= @selector(showInfo:);
//infoBar.tag = 3;
UIBarItem* space = [[[UIBarButtonItem alloc] initWithBarButtonSystemItem:
UIBarButtonSystemItemFlexibleSpace target:nil action:nil] autorelease];
_toolbar = [[UIToolbar alloc] initWithFrame:
CGRectMake(0, 460 - 44, 320, 44)];
_toolbar.autoresizingMask = UIViewAutoresizingFlexibleTopMargin | UIViewAutoresizingFlexibleWidth;
_toolbar.tintColor = [UIColor blackColor];
_toolbar.items = [NSArray arrayWithObjects:space,tweetbar, space,pagebar,space,infoBar,space, nil];
[self.view addSubview:_toolbar];
[tweetbar release];
[super viewDidLoad];
}
и в каждом представлении один и тот же код