2013-05-30 1 views
0

약 100 개의 UIButton 개체가있는 응용 프로그램을 작성하고 있습니다. 사용자가 버튼을 누르지 않아도 버튼의 시각적 속성을 조작하고 싶습니다. Xcode 사전 런타임에서 단추를 만드는 경우 런타임에 각 단추에 대한 포인터를 얻는 방법은 무엇입니까? 어딘가에 등록부가 있습니까?보기에서 기존 개체에 대한 포인터 목록을 얻으려면 어떻게해야합니까?

뷰의 모든 개체 목록을 열거하고 해당 클래스 유형과 속성을 쿼리하여 원하는 단추 만 찾으면 충분합니다.

컬렉션보기를 사용해야합니까?

런타임에 단추를 만들면 배열을 만들 때 배열에 포인터를 저장할 수 있지만 다른 방법이 있습니까?

도와주세요!

답변

2

UIView 속성 하위보기에 액세스하면이보기에있는 다른 하위보기 (다른보기의 사용자는 재귀 사용이 필요함)에있는이 하위보기 (UIButtons와 같은)에 액세스 할 수 있습니다. 이 같은

//UIView 
@property(nonatomic, readonly, copy) NSArray *subviews 

:

NSArray *subviews = myView.subviews; 

for(NSObject *uiobject in subviews){ 
    if([uiobject isMemberOfClass:[UIButton class]]){ 
     // alter your buttons here 
    }//if there are for example uiViews you can try use recurrency 
} 
관련 문제