2012-11-21 120 views
0

我需要一個UIButton,但我不想爲它的邊框。UIButton刪除邊界覆蓋觸摸

不過,我還是想繼續保持漂亮的漸變疊加,當有人觸摸按鈕

像Facebook的iPad應用程序,它們具有顯示出一個灰色的框覆蓋,當你觸摸它們的文本鏈接在新聞飼料。

我在這裏看到了關於使用UISegmentedControl的解決方案。不過,我不想在解決方案中使用梯度/ Quartz框架。

有沒有人遇到過這個問題?

UPDATE

這裏有一個例證 image

(1)是您接觸之前(2)當你觸摸按鈕會發生什麼。

我基本上只是想複製這種效果,我猜想一個透明的'疊加',就像當你觸摸一個按鈕時會發生什麼,但沒有邊框。

+0

可能包括對我們這些誰不使用Facebook的屏幕截圖? –

+0

[link] http://tinypic.com/r/160tmo/6 (1)在觸摸之前 (2)是觸摸鏈接時發生的情況。 我基本上只是想複製這種效果,我猜想是一個透明的'疊加',就像當你觸摸一個按鈕時會發生什麼,但沒有邊框 – Imme22009

+0

請不要在與Xcode無關的問題中使用'xcode'標籤。 – 2012-11-21 18:14:54

回答

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]; 
+0

謝謝你。圓角也很好添加。 – Imme22009

+0

祝你好運! – Tieme

1

用所需的顏色製作UIImage,並調用setBackgroundImage:forState:以突出顯示狀態(用戶點擊該按鈕時突出顯示該按鈕);

+0

就這麼簡單?謝謝! – Imme22009