내가하고 싶은 것은 이상적으로 UIView (40 개 이상의 버튼이 많습니다)의 모든 버튼을 반복하고 버튼에 따라 이미지가 바뀝니다. 표시. 아무도 내가 이것을 어떻게 할 수 있는지 안다?iPhone의 UIView에있는 모든 버튼에 액세스하십시오.
감사합니다 !!!!
내가하고 싶은 것은 이상적으로 UIView (40 개 이상의 버튼이 많습니다)의 모든 버튼을 반복하고 버튼에 따라 이미지가 바뀝니다. 표시. 아무도 내가 이것을 어떻게 할 수 있는지 안다?iPhone의 UIView에있는 모든 버튼에 액세스하십시오.
감사합니다 !!!!
단추가 들어있는 UIView의 하위보기 속성을 사용하십시오. NSArray의 각 UIView 요소에 대해 태그 속성을 검사합니다. 태그가 로직에 필요한 것과 일치하는 경우 해당 UIView 인스턴스에 표시된 이미지를 변경하십시오.이 경우에는 버튼 중 하나입니다.
대단히 감사합니다! –
내가 devilaether 말했듯이, 사용 subviews
속성을 말하지만, 당신이 그것으로 다른 작업을 수행하기 전에 서브 뷰가있는 UIButton 있는지 확인하기 위해 추가 검사를 할 것입니다 :
for(UIView *view in [rootView subviews]) {
if([view isKindOfClass:[UIButton class]]) {
if([view tag] == 0) {
// First image
} /* ... */
else {
NSLog(@"didn't recognize tag");
}
} else {
NSLog(@"view is not a button");
}
}
당신은 또한 당신의 인생을 만들 수 NSArray를 어딘가에 반복 할 UIButtons로 저장하면 더 쉽습니다. 이 경우 isKindOfClass:
수표가 발급됩니다. 자세한 내용은 NSObject protocol을 참조하십시오.
이 작동하지만 NSLog는 문자열 앞에 @가 있어야합니다. @ "태그를 인식하지 못했습니다". 그렇지 않으면 코드가 작성되지 않습니다. 편집을 시도했지만 이러한 작은 변경 사항을 편집 할 수 없습니다. – HotFudgeSunday
좋은 캐치 - 완전히 놓친 :) 감사합니다! – Tim
for(i=0; i<numberOfTags; i++){
UIButton *tempBtn = [yourView viewWithTag:i];
[tempBtn setImage:yourImage];
}
@stefan : 의사? 정말?! – Forer