2011-04-12 5 views
1

에 의해 클리핑됩니다. 이것과 함께 사용하는 접근 방법이 약간 잘못 될 수 있습니다. 그렇다면 아마도 누군가가 조언 할 수는 있습니다.하지만 어쨌든 패턴은 있습니다. 응답기 위젯을 만들려면 UIView의 경계를 채우는 보이지 않는 UIButtonTypeCustom을 추가해야 모든 뷰에 이전 버전과 호환되는 버튼 비헤이비어를 추가 할 수 있습니다. 내 필요에 따라 완벽하게 잘 작동합니다. 이 하이브리드 버튼을 사용하는 사용자 경험을 약간 향상시키기 위해 버튼에 showsTouchWhenHighlighted를 YES로 설정합니다. 이 잘 작동하지만 버튼의 "발광"버튼의 부모 UIView에 의해 클리핑됩니다. 난 노력 했어;UIView 내부의 UIButton, showsTouchWhenHighlighted 글로우가 슈퍼 뷰

그러나 이들 중 누구도 부모 뷰의 경계를 벗어날 수 없습니다. 그것은 아주 사소한 외관상의 문제지만, 나는 이것이 더 효과적이게 보일 것이라고 생각합니다.

누군가가 도와 줄 수 있기를 바랍니다! 덕분에

답변

0

나는 이런 식의 코드를 사용하며, 부모가 클리핑하지 않습니다. - 검증되고 테스트되었습니다.

UIButton myButton = [[UIButton alloc] init....]; 
[parentView addSubview:myButton]; 
myButton.showsTouchWhenHighlighted = YES; 
parentView.clipsToBounds = NO; 

버튼에 .clipsToBounds = NO를 설정할 필요가 없습니다. 기본값은 이미 NO입니다.

속성을 설정할 때 parentView이 0이 아닌 것을 확인 했습니까? 글로우 효과를 클리핑 할 수도있는 다른 계층의 UIView이 더 위에 있지 않은지 확인하십시오.