2010-10-12 56 views
5

Ai đó có thể trả lời tôi cách gọi phương thức này với phương pháp khác trong Mục tiêu C trên XcodeLàm thế nào để gọi một phương thức từ phương thức khác trong Mục tiêu C?

+0

Đây không phải là rất rõ ràng. Vui lòng thử mô tả dài hơn. Có lẽ bạn đang nói về @selector? – Nimrod

+0

giả sử trong didFinishinLaunchingmethod tôi phải gọi - (IBAction) kiểm tra; phương pháp ... làm thế nào tôi có thể gọi nó? –

+0

Vui lòng xem xét sử dụng tiêu đề mô tả hơn cho câu hỏi của bạn. Cái này rất chung chung. –

Trả lời

5

Bạn nhận được một con trỏ đến một đối tượng thực hiện phương pháp khác và gửi thông điệp thích hợp (ví dụ: [otherObject doSomething]).

+1

xin vui lòng rõ ràng hơn Chuck i dint giúp bạn –

17

Cú pháp cơ bản để gọi một phương thức trên một đối tượng là thế này:

[object method]; 
[object methodWithInput:input]; 

Nếu phương pháp trả về giá trị:

output = [object methodWithOutput]; 
output = [object methodWithInputAndOutput:input]; 

More Detail


EDIT:

Đây là một ví dụ điển hình mà làm thế nào để gọi phương thức từ lớp khác:

OBJECTIVE C - Objective-C call method on another class?

Ví dụ:

SomeClass* object = [[SomeClass alloc] init]; // Create an instance of SomeClass 
[object someMethod];       // Send the someMethod message 
+0

cảm ơn naveed nó đã giúp! –

4

Ví dụ:

@implementation view1 
(void)someMethod 
{ 
    ......code of method... 
} 

@implementation view2 
(void)fistMethod 
{ 
    view1 *abc = [[view1 alloc]init]; 
    [abc someMethod]; 
    [abc release]; 
} 

Tôi hy vọng bạn hiểu rồi.

1

Nếu bạn có 2 chức năng bên trong lớp (file .m):

- (void) {} ​​Func1

- (void) {} ​​Func2

Nếu bạn muốn để gọi func2 từ func1, bạn không thể chỉ gọi func2();

thay vì chỉ bao gồm self

Đó là:

-(void) func1{ 
[self:func2]; 
} 
Các vấn đề liên quan