2011-08-01 3 views
1

"own"버튼을 누르면 내 앱이 다운됩니다. 내 코드에 무슨 문제가 있는지 모르겠다. 나는 이것에 처음이에요. 그래서 완전히 망친다면, 제발 열심히하지 마세요 :). 편집 :이 엑스 코드는 말한다 무엇 :이 줄에 무슨 문제가 있습니까?

#1 0x000144fd in -[UIApplication sendAction:to:from:forEvent:]() 

라인의 응용 프로그램 충돌 :

if (thing.hidden == NO) { 

이가 "자신을"속하는 코드입니다 :

- (IBAction)own { 

if (thing.hidden == NO) { 

int rNumber = rand() % 4; 

switch (rNumber) { 
    case 0: 
     result.text = @"A"; 
     break; 
    case 1: 
     result.text = @"B"; 
     break; 
    case 2: 
     result.text = @"C"; 
     break; 
    case 3: 
     result.text = @"D"; 
     break; 
    default: 
     break; 
} 

} 
if (thing.hidden == YES) { 
    int rNumber = rand() % 3; 
+0

어떤 라인이 충돌합니까? 충돌 메시지는 무엇입니까? – Eimantas

+0

디버그 창의 오류는 무엇입니까? – rckoenes

+0

전체 코드를 붙여 넣습니다. 또한 콘솔 로그를 붙여 넣으십시오. –

답변

0

아무것도 잘못 보인다 당신의 코드에서, 객체가 인 것으로 가정하면결과는이 적절하게 유지됩니다 .

+0

설명해 주시겠습니까? –

0
- (IBAction)own { 

if (thing.hidden == NO) { 

int rNumber = rand() % 4; 
NSString *myText = @""; // 
switch (rNumber) { 
    case 0: 
     myText = @"A"; 
     break; 
    case 1: 
     myText = @"B"; 
     break; 
    case 2: 
     myText = @"C"; 
     break; 
    case 3: 
     myText = @"D"; 
     break; 
    default: 
     break; 
} 
result.text = myText; 
} 
if (thing.hidden == YES) { 
    int rNumber = rand() % 3; 
+0

위의 주석을 참조하십시오. 여전히 코드를 사용해야하나요, 아니면 내 코드를 유지할 수 있습니까? –

+0

IBAction의 '발신자'매개 변수를 제외하고 코드에 아무런 문제가 없습니다. 당신은 내뿐만 아니라 작은 비트 수정을 제외하고 아무 것도 잘못입니다. –

+0

나는 stackoverflow에 내 자신의 질문을 게시하는 새로운 방법, 내 질문에 대답을 설정할 수 있습니까? –

2

IBAction를 실제로 어디 방법에 컨트롤을 연결할 수 있도록 객체의 방법을 찾을 수있는 인터페이스 빌더를 알려줍니다 단지 힌트 몇 가지 나선에게있을 수 있습니다.

iOS에서 동작에는 0 개, 1 개 또는 2 개의 매개 변수가 사용될 수 있습니다.

이 하나 개의 매개 변수 경우 해당 매개 변수는 메시지를 보내는 객체입니다 - (무효) 자신과 연결

- (IBAction) someAction:(id) sender forEvent: (UIEvent*) event; 

사용할 수 :

-(IBAction) someAction: (id) sender; 

이 경우, 매개 변수를, 그것은 형태를 취한다 nib 파일의 버튼에

0

방금 ​​만났습니다. 메모리 관리 때문에 버튼 관련 작업을 출시 된 viewController에 보냅니다. 희망이 도움이됩니다. (BTW, 나는 아크 모드를 사용합니다)

관련 문제