세 가지 옵션으로 분할 컨트롤이 있습니다. selected.segmentedIndex
에서 변수를 만드는 방법을 알지 못했기 때문에 다른 곳에서 메서드를 복사했습니다.int 대신 enum 문자열
Implicit conversion of 'tipoServidor' (aka 'enum tipoServidor') to 'NSString *' is disallowed with ARC
어떻게이 일을 할 수있는 올바른 방법은 다음과 같습니다
typedef NS_ENUM(int, tipoServidor) {
SERVIDOR_ARG = 1,
SERVIDOR_EU = 2,
SERVIDOR_US = 3};
@property (nonatomic) tipoServidor servidorType;
<Another file>
if (self.persistentSettings.servidorType == SERVIDOR_ARG){
self.servidorControl.selectedSegmentIndex= 0;
} else if (self.persistentSettings.servidorType == SERVIDOR_EU) {
self.servidorControl.selectedSegmentIndex= 1;
} else if (self.persistentSettings.servidorType == SERVIDOR_US) {
self.servidorControl.selectedSegmentIndex = 2;}
<Another file>
- (NSString *)servidorType {
AdSettings *settings = [[AdSettings alloc] init];
NSString *server = [settings servidorType];
문제는 마지막 줄이 오류가 발생한다는 것입니다?
당신에게
대단히 감사합니다. 그 함수를 어디에 둘 것인지 생각하려고하는 Im DescriptionOfServidor ... 마지막 힌트? haha – user3294339
@ user3294339 사용하려는 위치에 따라 다릅니다. 만약 하나의 .m 파일에 국한되어 있다면, 거기에있는 어떤 클래스의'@ implementation' 섹션 위에 파일을 넣고'NSString' 앞에'static'을 추가하십시오. 여러 .m 파일간에 공유하기를 원한다면 원하는 .m 클래스에 넣고'enum'이 선언 된 헤더에 forward 선언을 추가하십시오. 전달 선언은 다음과 같습니다 :'NSString * DescriptionOfServidor (tipoServidor e); ' – dasblinkenlight
@user3294339 이것을 시도하십시오. 문제가 해결되지 않으면 옆에있는 체크 표시를 클릭하여 답을 수락하십시오. – dasblinkenlight