0

UIButton が必要ですが、境界線は必要ありません。

ただし、誰かがボタンに触れたときに、その素敵なグラデーションオーバーレイを維持したい

Facebook iPad アプリのように、ニュース フィードにあるテキスト リンクをタップすると灰色のボックス オーバーレイが表示されます。

ここで UISegmentedControl の使用に関する解決策を見ました。ただし、ソリューションでグラデーション/ Quartz フレームワークを使用する必要はありません。

誰もこの問題に遭遇したことがありますか?

アップデート

これがイラストです 画像

(1)はタッチする前、(2)はボタンをタッチしたときの状態です。

私は基本的にこの効果を複製したいだけです。ボタンに触れたときに起こるような透明な「オーバーレイ」だと思いますが、境界線はありません。

4

2 に答える 2

1

必要な色のUIImageを作成しsetBackgroundImage:forState:、強調表示された状態を呼び出します(ユーザーがボタンをタップするとボタンが強調表示されます)。

于 2012-11-21T18:17:22.383 に答える
1

以下を使用します。

UIButton *yourButton = [UIButton buttonWithType:UIButtonTypeCustom];
[yourButton setFrame:CGRectMake(0, 0, 200, 44)];
[yourButton setTitle:@"like" forState:UIControlStateNormal];

[yourButton setBackgroundImage:[UIImage imageNamed:@"normal.png"] forState:UIControlStateNormal];
[yourButton setBackgroundImage:[UIImage imageNamed:@"gradient.png"] forState:UIControlStateHighlighted];

// Round corners? Requires Quartzcore framework
[yourButton.layer setCornerRadius:8.0f];
[yourButton.layer setMasksToBounds:YES];
[yourButton.layer setBorderWidth:0.0f];
于 2012-11-21T18:28:22.287 に答える