2012-04-10 3 views
1

В моем проекте («Xcode 4.3.2 - приложение с одним представлением») я вручную добавил панель инструментов с элементом кнопки, мне нужно обновить ярлык кнопки программно. Как я могу это сделать? Не могли бы вы мне помочь?xCode - изменение метки ярлыка на панели инструментов

ViewController.h

#import <UIKit/UIKit.h> 

@interface ViewController : UIViewController <UIWebViewDelegate>{ 
    IBOutlet UIWebView *webDisplay; 
    IBOutlet UIToolbar *menuBar; //my toolBar 
} 
@property(nonatomic,retain) UIWebView *webDisplay; 
@property(nonatomic,retain) UIToolbar *menuBar; 

- (IBAction) changeLabel:(id)sender; 

@end 

ViewController.m

- (IBAction) changeLabel:(id)sender{ 

    //code for updating label 

} 
+1

возможно дубликат [Изменить текст UILabel (UIBarButtonItem) на панели инструментов программно] (http://stackoverflow.com/questions/1225457/change-the-text-of-a-uilabel-uibarbuttonitem -on-a-toolbar-программно) – Gray

ответ

3
@interface ViewController : UIViewController <UIWebViewDelegate>{ 
    IBOutlet UIWebView *webDisplay; 
    IBOutlet UIToolbar *menuBar; //my toolBar 
    IBOutlet UIBarButtonItem *barButton; 
} 
... 

- (IBAction) changeLabel:(id)sender{ 

barButton.title = @"test"; 

} 

Обязательно установите BarButtonItem в REFERENCING Outlet "barButton"

+0

Большое спасибо! Теперь его работа отлично ... – shebi

0
#import <UIKit/UIKit.h> 

@interface ViewController : UIViewController <UIWebViewDelegate>{ 

IBOutlet UIWebView *webDisplay; 
IBOutlet UIToolbar *menuBar; //my toolBar 

    UIButton* btnBack; 
} 

@property(nonatomic,retain) UIWebView *webDisplay; 

@property(nonatomic,retain) UIToolbar *menuBar; 

- (IBAction) changeLabel:(id)sender; 

@end 

ViewController.m

btnBack = [UIButton buttonWithType:UIButtonTypeCustom]; 
[btnBack setFrame:CGRectMake(0, 0, 49, 30)]; 
[btnBack setBackgroundImage:[UIImage imageNamed:@"backbtn.png"] forState:UIControlStateNormal]; 
[btnBack.titleLabel setFont:[UIFont boldSystemFontOfSize:12]]; 
UIBarButtonItem *abackButton = [[UIBarButtonItem alloc] initWithCustomView:btnBack] 



- (IBAction) changeLabel:(id)sender{ 

//code for updating label 
[btnBack setTitle:NSLocalizedString(@"Detail_Back", nil) forState:UIControlStateNormal]; 

} 
Смежные вопросы