1

按钮不会更改标题。当我第一次单击它时,它会更改标题,但是当我隐藏表格时,它不会在按钮上显示标题。我不知道为什么NSLog它显示标题但不显示在按钮上

-(IBAction)btnClicked
{
    if (flag==1) 
    {
        flag=0;
        tblSimpleTable.hidden=NO;
        [i setImage:[UIImage imageNamed:@"UpArrow.png"]];
    }
    else
    {
        flag=1;
        tblSimpleTable.hidden=YES;
        NSLog(@"This is title %@",title);
        btn.titleLabel.text=title;
        [i setImage:[UIImage imageNamed:@"downArrow.png"]];
    }
}
4

5 回答 5

4

根据[UIButton titleLabel] 参考资料,该属性是只读的。

您将需要[UIButton setTitle:forState:]改用。

苹果参考

编辑:您还可以缩减实现的大小:

- (IBAction)btnClicked
{
    tblSimpleTable.hidden = flag;
    [i setImage:[UIImage imageNamed:flag ? @"DownArrow.png" : @"UpArrow.png]];
    if (flag)
        [btn setTitle:@title forState:UIControlStateNormal];
    flag = !flag;
}
于 2012-08-01T09:45:57.193 回答
1

用这种方法试试..

[button setTitle:@"Title" forState:UIControlStateNormal];
于 2012-08-01T10:46:36.260 回答
1

请试试这个

[btn setTitle:@"My Title" forState:UIControlStateNormal];
于 2012-08-01T09:43:57.497 回答
1

设置按钮的标题及其状态。在您的情况下,您的字符串是标题,然后像这样设置它..

[btn setTitle:title forState:UIControlStateNormal];
于 2012-08-01T09:55:41.663 回答
0

尝试这个... [btn setTitle:title forState:UIControlStateNormal]

根据UIButton的 Apple 文档,titleLabel它是只读的。

于 2015-04-15T18:04:56.800 回答