-2

3つの異なるボタンがあり、UIViewに表示するためにforループを使用しています。問題は、表示されるボタンが1つしかないことです。

float yButton = 50.0;

for (int i = 0; i < 2; i++) {
    UIButton *button = [UIButton buttonWithType:UIButtonTypeRoundedRect];
    button.frame = CGRectMake(80.0, yButton + 70.0, 160.0, 40.0);
    [button addTarget:self action:@selector(buttonClicked:) forControlEvents:UIControlEventTouchDown];
    [self.view addSubview:button];
    [button setTag:i];
}

また、ボタンのタイトルをA、B、Cに設定するにはどうすればよいですか(ボタンが3つしかないため)。

4

2 に答える 2

3

すべてのボタンに同じフレームを指定します。y原点をインクリメントする必要があります。

ループの最後に、次のようにします。

yButton += 50; // pick a value that meets your needs.

タイトルを設定するには、次の3つのタイトルで配列を作成します。

NSArray *titles = @[ @"A", @"B", @"C" ];

次にループ内:

[button setTitle:titles[i] forState:UIControlStateNormal];
于 2013-02-19T01:38:55.653 に答える
2

すべてのボタンに同じフレームを指定します。

telcoButton.frame = CGRectMake(80.0, yButton + 70.0, 160.0, 40.0); 

あなたはおそらくこれをしたいでしょう:

telcoButton.frame = CGRectMake(80.0, (yButton * i) + 70.0, 160.0, 40.0);
于 2013-02-19T01:37:49.420 に答える