按钮每次按下更改标题

问题描述:

我试着这样做,但是当我按它它不​​会改变,它只显示文本。 也试过如果其他功能,但没有结果。按钮每次按下更改标题

.H

IBOutlet UIButton *poga1; 
@property (nonatomic, retain) UIButton *poga1; 

.M

@synthesize poga1; 

- (void)viewDidLoad 
{ 
[super viewDidLoad]; 

[poga1 setTitle:@"My Title" forState:UIControlStateNormal]; 
[poga1 setTitle:@"My Selected Title" forState:UIControlStateSelected]; 

} 

试试这个:如果通过故事板(GUI界面),增加了一个标题,然后将其删除。

.h //创建IBOutlet操作。怎么样?您右键单击该按钮并将其拖动到.h文件。一个弹出发生,你需要点击下拉菜单,然后切换到行动 //应该是这样的

- (IBAction)yourButton:(id)sender; 

.m 
//there will be a new function in your .m which is your button action function. 
@synthesize poga1; 

- (void)viewDidLoad 
{ 
[super viewDidLoad]; 

[poga1 setTitle:@"My Title" forState:UIControlStateNormal]; 
[poga1 setTitle:@"My Selected Title" forState:UIControlStateSelected]; 

} 

- (IBAction)Start:(id)sender 
{ 

/*如果你想这会在每次按下然后随时更改文本,你需要一个全局计数器,每次按下按钮时增加。那么你将有一个if语句,说明计数器是否等于1(按下一次),然后将标题设置为hello,如果计数器等于7(按下7次)将标题设置为再见。 */

[sender setTitle:@"whatever" forState:UIControlStateNormal]; 
} 

您需要捕获按钮的动作,并更改标题,引起的UIButton doenst作为选择有一个永久的状态,就像一个开关或一个切换。

如果要更改标题,当用户按:

-(IBAction) onClick: (id) sender { 
    [(UIButton *) sender setHighlighted:YES]; 
} 
+0

但是,只有当用户保持按钮按下时,文本才会显示。我试图在每次触摸文字变化,并保持,直到再次按下按钮。 – Edgars 2012-04-02 11:55:56

+0

所以那么唯一的选择是捕捉动作和更改标题,当用户选择按钮,导致按钮不能被“选中”,它不是一个开关 – 2012-04-02 11:57:12

+0

声音的逻辑..但我不知道如何做出这一行动,你能帮忙吗? – Edgars 2012-04-02 12:02:08