2012-07-08 34 views
5

Có thể có UIButton tùy chỉnh có hình ảnh chỉ bao phủ một nửa không? tôi tưởng tượng nó sẽ là một cái gì đó như thế này:Hình ảnh UIButton tùy chỉnh iOS

UIButton *someButton = [UIButton buttonWithType:UIButtonTypeCustom]; 
[someButton setBackgroundImage:[UIImage imageNamed:@"buttonPicture"]]; 

/* Then there must be some property I can set that prevents the button from stretching the image?? */ 

. 
. 
. 

Tôi muốn có một nút 50x100px mà chỉ có một hình ảnh 50x50px trên nửa đầu, và phải minh bạch trên nửa dưới.

Tôi biết cách tạo nút tùy chỉnh và mọi thứ. Im chỉ woondering những gì tài sản là điều khiển kéo dài của backgroundImage.

Cảm ơn!

+0

Kích thước của hình ảnh và trực tràng của nút bằng/tỉ lệ? – CodaFi

+0

được cập nhật để làm rõ. Cảm ơn – bkbeachlabs

Trả lời

7

Sử dụng

[someButton setImage:[UIImage imageNamed:@"buttonPicture"] forState: UIControlStateNormal]; 
someButton.imageEdgeInsets = UIEdgeInsetsMake(-50, 0, 0, 0); 
1

Tôi nghĩ rằng bạn có thể:

  1. tạo tập tin ảnh nút của bạn như một 50x100px hình ảnh (cùng kích thước như nút);

  2. làm hình ảnh này được một nửa trong suốt (PNG với alpha),

thay vì cố gắng gán nút một hình ảnh nhỏ hơn bao gồm chỉ một nửa của nó và ngăn kéo dài.

Các vấn đề liên quan