2013-10-05 3 views
2

Xcode 5의 스토리 보딩을 사용하여 iOS SDK 7.0 응용 프로그램을 만듭니다.UIButton의 선택된 상태가 iOS7에서 작동하지 않습니다.

버튼을보기로 드래그했습니다. 내 단추가 기본적으로 "A"를 표시하도록합니다. 다음은 단추 속성입니다. 유형 : 시스템, 상태 구성 : 기본값, 제목 : 일반

단추가 선택된 상태로 표시되도록합니다. 따라서 변경된 버튼 속성 : 상태 구성 : 선택됨

버튼의 속성 관리자의 컨트롤 아래에 Selected라는 속성이 있습니다. '선택됨'을 선택하면 'B'가 표시되는 대신 A 이상의 마커처럼 강조 표시됩니다. 즉, 문자가 표시되지 않습니다.

XCODE에서 실행했습니다. 버튼이 선택되지 않은 경우 "A"가 예상대로 표시되지만 단추를 선택하면 B를 표시하는 대신 단추의 텍스트 부분이 하늘색으로 강조 표시됩니다. 또한, 나는 통제하에 강조 내용을 결코 선택하지 않았다.

상태를 올바르게 표시 할 수 있도록 어떻게 해결할 수 있습니까?

답변

5

당신은 당신이 주 구성이 스토리 보드에 선정에 설정되어있는 동안 'B'에있는 버튼의 제목를 설정해야합니다. 그런 다음 버튼의 Touch Up Inside 이벤트에 액션을 연결해야합니다. 해당 작업 내에서 버튼의 selected 속성을 토글합니다.

속성 검사기에서 '선택됨'을 선택하면 버튼의 초기 선택 상태를 YES로 설정하는 것입니다. XCode는 해당 상태에서 단추 모양을 보여줍니다.

+0

주목할 가치가 있습니다. 유형 : 맞춤식으로 선택하지 않으면 다른 점이 있습니다. – AppHandwerker

3

이것이 XCODE 5의 버그 인 것으로 나타났습니다. 즉, 컨트롤의 버튼 아래에서 선택된 속성을 확인하면 버튼에 선택된 상태가 표시되지 않습니다. 그것은 우리가 응용 프로그램을 실행 시뮬레이터에서 작동합니다. 우리는 코드에 의해 버튼 제목을 설정 누군가를 위해

- (IBAction)flipButton:(UIButton *)sender { 
     sender.selected=!sender.isSelected; 
    } 
+0

단추가 선택한 값으로 모두 변경되면 안됩니까? –

6

아래로 선택한 상태 단추의 타겟 - 액션을하고 전환 할 필요가있을 것이다, 나는 아이폰 OS 7.1에서 발견, 당신은 명시 적으로 다양한에 대한 제목을 설정해야 버튼 상태, iOS 7.0에서는 UIControlStateNormal의 설정 제목이 다른 버튼 상태에도 적용됩니다.

// works on 7.0 
[self.ibActionButton setTitle:NSLocalizedString(@"Register", nil) forState:UIControlStateNormal]; 

// works on 7.1 
[self.ibActionButton setTitle:NSLocalizedString(@"Register", nil) forState:UIControlStateNormal|UIControlStateDisabled]; 
관련 문제