0

動的ラベルの最後に追加するようなボタンを配置する必要があるアプリケーションがありました。正しい位置)方法.私はこのようにしています.また、ラベルを常に中央に配置する必要があります `

label = [[UILabel alloc]init];
    [label setFrame:CGRectMake(105,9,160, 30)];
    [label setFont:[UIFont fontWithName:@"Helvetica-Bold" size:18]];
    label.textAlignment = UITextAlignmentLeft;
    label.numberOfLines = 1;
    label.text=myString;
    [[self.view viewWithTag:300] addSubview:label];
    CGSize expectedLabelSize = [label.text sizeWithFont:label.font];
     CGRect newFrame = label.frame;
    newFrame.size = expectedLabelSize;
    if(newFrame.size.width>160.0)
      newFrame.size.width=150.0; 
      label.frame = newFrame;
    [label setCenter:CGPointMake(300/2,40/2)];
     button = [UIButton buttonWithType:UIButtonTypeCustom];
    [button setFrame:CGRectMake(newFrame.origin.x+newFrame.size.width,13,20,20)];
    [button setBackgroundImage:[UIImage imageNamed:@"arrow.png"] forState:UIControlStateNormal];

「どこが間違っているのか誰か教えてくれませんか?

4

1 に答える 1

1

このフレームをボタン .. に設定します。

[button setFrame:CGRectMake(newFrame.origin.x+newFrame.size.width,13,20,20)];

あなたのy座標は固定されているので、動的に変更する必要があります

于 2013-08-08T09:40:02.180 に答える