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] リファレンスによると、そのプロパティはreadonlyです。

[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

ボタンのタイトルとその状態を設定します。あなたの場合、あなたの文字列はタイトルです、そしてそれをこのように設定してください。

[btn setTitle:title forState:UIControlStateNormal];
于 2012-08-01T09:55:41.663 に答える
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 に答える
0

これを試して... [btn setTitle:title forState:UIControlStateNormal]

UIButtonの Apple ドキュメントによると、titleLabel読み取り専用です。

于 2015-04-15T18:04:56.800 に答える