혼란

2012-08-16 5 views
0

가능한 중복 :
Method Syntax in Objective C혼란

나는 아이폰 개발에 아주 새로운 그리고 난 X-코드

를 사용하는 방법 선언 아이폰 개발에 대한 혼란 스러워요

여기에 방법의 이름이 무엇인지 식별하는 데 도움을주십시오.

tableView 또는

willSelectRowAtIndexPath 당신이 그것을 인식 않았다 방법을 설명하십시오. 미리 감사드립니다.

-(NSIndexPath *)tableView:(UITableView *)tableView willSelectRowAtIndexPath:(NSIndexPath *)indexPath { 

    NSUInteger row = [indexPath row]; 
    if (row == 0) return nil; 
    return indexPath; 
} 

답변

1

서명 서명은 tableView:willSelectRowAtIndexPath:입니다. 여기서 Objective C - http://cocoawithlove.com/2009/06/method-names-in-objective-c.html의 메소드 이름에 대해 읽을 수 있습니다. 이유와 현재 상황을 잘 모르는 경우 자세히 알아보십시오.

+0

(+1)을 볼 수 있지만 ... 당신은 그것을 주장 할 수로는 UIKit의 문맥 주어,보다 구체적인 방법 이름은'이다. 나는 이것이 질적 인 방법이라는 것을 알고 있지만, 메소드가 어느 클래스에 속하는지를 아는 것은 종종 유용합니다. 물론, 반론은 이것이 우리가 참조하고있는 UIKit 메소드인지 OP 자신의 디자인인지 알 수 없다는 것입니다. – idz

+0

네, 맞습니다.하지만 선택자의 관점에서 메서드 이름을 보면 올바른 것입니다. 그것은 이것보다 더 복잡 합니다만 ... :) – robertvojta

-1

있어서 이름 -tableView이다 willSelectRowAtIndexPath : 후

단어 ''공간 '전()가

PS 파라미터 타입 내의 파라미터

단어 : 물론 첫 번째()는 반환 유형입니다

1

메서드 이름은 키를 잡고 Xcode에서 쉽게 알 수 있으며 정보를 얻으려는 방법을 클릭하십시오.

편집 : 유형 UITableView

입니다 :

– tableView:willSelectRowAtIndexPath:는 방법 "서명/이름"이

tableView

- (NSIndexPath *)tableView:(UITableView *)tableView willSelectRowAtIndexPath:(NSIndexPath *)indexPath

매개 변수로 코드에 선언이다

임박한 선택 사항에 대해 위임자에게 알리는 테이블 뷰 객체입니다.

indexPath

: 유형 NSIndexPath

있는 tableView의 행의 위치를 ​​인덱스 경로이다.

Return Value() 유형 NSIndexPath

확인 또는 선택 행을 변경하는 인덱스 경로 객체이다. 다른 셀을 선택하려면 indexPath 이외의 NSIndexPath 객체를 반환합니다. 행을 선택하지 않으려면 nil을 리턴하십시오.[: willSelectRowAtIndexPath : UITableViewDelegate있는 tableView]`-

- here

+0

답을 고맙지 만 "tableView : willSelectRowAtIndexPath"와 같은 메서드 이름이 객관적으로 유효한 이름입니다 -c, java, C, C + +와 같은 특수 문자를 허용하지 않습니다 : 메서드 서명 선언. –

+0

Objective C 메시지 전송은 java/C/C++ 등의 구문과 규칙을 사용하지 않습니다. Smalltalk 메시지와 유사합니다. 이러한 이름은 여러 부분으로 이루어지며 인수는 C++에서와 같이 이름 다음에 괄호 안에 지정되지 않지만 대신 이름으로 삽입됩니다. 메서드 이름을 고려하는 것은 약간 부정확합니다. 기술적으로 메소드에는 이름이 없으며 메시지에 대한 응답으로 실행되는 이름없는 코드입니다. 그 이름들은 메시지의 이름입니다. 그러나 실제로는 메서드 이름을 고려하는 것이 일반적입니다. –