1

titleLabel.textを設定しようとしているのに、デフォルトのタイトルテキストから変更されないという奇妙な問題。デバッガーでステップスルーし、正しく新しい値であるtaskTitle値を調べましたが、titleButton.titleLabel.textプロパティが値の割り当てを取得していないようです。

- (void)setChallengeTitle:(NSString *)taskTitle
{
    titleButton.titleLabel.text = taskTitle;
    titleButton.titleLabel.font = [UIFont fontWithName:@"Gotham Bold" size:18];



    CGSize stringsize = [taskTitle sizeWithFont:[UIFont fontWithName:@"Gotham Bold" size:18]];
    //I have to add a little bit since it doesn't seem to calculate the size of gotham correctly
    int buttonWidth = stringsize.width + 20;
    if (buttonWidth > 320)
        buttonWidth = 320;

    [titleButton setFrame:CGRectMake( (320 - buttonWidth)/2 ,10, buttonWidth, 40)];
}
4

2 に答える 2

1

UIButtonメソッドを介してのテキストを設定してみましたか?

試す:

[titleButton setTitle:taskTitle forState:UIControlStateNormal]

UIControlStateNormalすべての州のタイトルを設定します。

于 2013-03-12T00:10:00.117 に答える
0

デフォルトのテキストが表示されている場合は、IBOutletとして正しく接続されていない可能性があります。

InterfaceBuilderでリンクを確認してください。

それが役に立てば幸い..

于 2013-03-11T23:56:43.670 に答える