나는 아주 간단한 UI를 가지고 있습니다. 당신은 그림에서 볼 수 있습니다. 사용자가 EMIT를 치면 토글을 표시하고 레이블 판독 값을 숨겨야합니다.iOS : UISwitch가 .hidden = YES로 숨기기 실패
사용자가 LISTEN을 누르는 경우 정확히 반대를 수행해야합니다. 여기
(또한 스크린 샷에 포함 된) 코드-(IBAction) segmentedControlIndexChanged
{
// LOG (@"Seg: %d", segmentedControl.selectedSegmentIndex);
BOOL isEmitting = (segmentedControl.selectedSegmentIndex == 0);
BOOL isListening = ! isEmitting;
self.remoteIOAudioUnit->emitting = isEmitting;
// hide readout if we're transmitting
labelA.hidden = labelB.hidden = labelC.hidden = lblCurrentRoom.hidden = (isEmitting ? YES : NO);
// hide toggles if we're listening
switchA.hidden = switchB.hidden = switchC.hidden = (isListening ? YES : NO);
}
당신은 스크린 샷에서 볼 수 있듯이, 브레이크 포인트가 박히는이다. 세그먼트 화 된 컨트롤을 토글 할 때 코드가 실행 중입니다. 그러나 기괴하게 UISwitches는 숨기 어렵습니다.
내가 다른 세그먼트 (EMIT)를 맞으면 제대로 작동합니다. ie 레이블은 마치 그들이하는 것처럼 숨 깁니다.
그렇다면 스위치가 숨기지 않는 이유는 무엇입니까? YES
에
스위치는 코드 또는 IB에 추가됩니까? IB에서 콘센트 스위치가 올바르게 설정 되었습니까? 예를 들어 알파 값과 같은 다른 UISwitch 속성을 수정할 수 있습니까? –