UIButton
은 이미지가 단추 프레임보다 큰 배경 이미지로 만들려고합니다.UIButton 배경 이미지를 프레임보다 크게 만듭니다.
문제는 UIButton
이 자동으로 이미지의 크기를 조정하고 동작을 변경하는 방법을 찾지 못했기 때문입니다.
내가 뭔가 명확하지 않거나 사용자 정의 버튼을 만들 때가 되었습니까?
UIButton
은 이미지가 단추 프레임보다 큰 배경 이미지로 만들려고합니다.UIButton 배경 이미지를 프레임보다 크게 만듭니다.
문제는 UIButton
이 자동으로 이미지의 크기를 조정하고 동작을 변경하는 방법을 찾지 못했기 때문입니다.
내가 뭔가 명확하지 않거나 사용자 정의 버튼을 만들 때가 되었습니까?
이 답변은 다음과 같습니다. UIButton
의 기존 인터페이스를 통해 가능하지 않습니다.
구현하는 가장 간단한 방법은 UIButton
의 사용자 지정 하위 클래스를 사용하고 UIButton
와 같은 프레임과 UIImageView
를 생성, 스케일링 클리핑 끄고 다음 바로 모든 setBackground
방법을 캡처하고 처리 상태 변경 사항을 캡처 할 것으로 보인다 "정상적인"버튼 상호 작용으로 배경 이미지가 변경됩니다.
서브 클래스있는 UIButton하고 당신이 원하는 크기를 반환하도록
- (CGRect)backgroundRectForBounds:(CGRect)bounds;
메소드를 오버라이드 (override).
힌트 :이 방법을 사용하여 배경의 중심에 배치 할 수도 있습니다.
왜 버튼 프레임을 이미지 크기로 만듭니 까? – bobnoble
다음은 답변에 대한 비유입니다. 이미지 퍼즐 조각. 그들은 정사각형이 아니며 완벽하게 맞습니다. 그러나 버튼을 조각의 가장 바깥 쪽 부분에 정사각형으로 배치하거나 겹치는 버튼으로 감을 수는 없습니다. 당신은 버튼을 조각의 메인 바디로 만들고 작은 홀수 비트를 가장자리에 붙이면됩니다. – DBD
이제 더 잘 이해할 수 있습니다 ... 큰 이미지를 보여주는 'UIImageView'상단에 '보이지 않는'버튼을 덧씌우면됩니다. 버튼은 다른 버튼과 겹치거나 간섭하지 않도록 적절한 크기 일 수 있습니다. – bobnoble