2012-09-26 7 views
0

프로그래밍 방식으로 만든 UIPickerView가 있습니다. 누군가가 화면에서 UITextField를 누르면 나타납니다. 유일한 문제는 UIPickerView가 이미 채워진 후 다른 사람이 UITextField를 누르면 더 많은 PickerView가 이전 레이어 위에 레이어를 시작한다는 것입니다.로딩에서 UIPickerView 표시 안 함 - Obj C

UIPickerView가 이미 화면에 표시되어있는 경우 표시하지 않으려면 적절한 방법은 무엇입니까?

답변

1

기타가 있습니다. 이렇게하는 방법은 여러 가지가 있지만 가장 간단한 방법은 UIPickerView에 대한 참조를 유지하는 것입니다. 다시 말해 클래스 변수에 저장하고 nil이 아닌지 확인하십시오.

또한 UIPickerView에서 태그 속성을 설정하고 수퍼 뷰 검사를 쿼리하여 이미 있는지 확인할 수 있습니다. 태그에 대한 자세한 정보 : http://developer.apple.com/library/ios/documentation/uikit/reference/uiview_class/uiview/uiview.html#//apple_ref/occ/instp/UIView/tag

의미가 있습니까?

+0

그건 의미가 있습니다. :) 의견을 보내 주셔서 감사합니다 - 내가 생각했던 해결책이 지나치게 복잡하다는 것을 알았습니다. – user990769

0

UIPicker가 나타나면 UITextField를 비활성화하고 선택기를 닫으면 다시 활성화 할 수 있습니다.