2010-07-16 39 views
0

我正在編寫iPhone應用程序,我想問一下目標C中傳遞的參數。我創建了2個視圖控制器。在第一個中,我有一個按鈕,當用戶按下按鈕時,它將調用 - (IBAction)pressButton(用戶定義的),並在5-6秒後(必須處理並檢索NSMutableArray * ),它會顯示一個表格。但是,我不知道如何將NSMutableArray傳遞給表類。我可以這樣做嗎?如何將參數從.m傳遞到另一個.m目標C

// situation 
// --------------------------------------------- 
// In MyViewController.m 

// class variable 
NSMutableArray * arr; 
- (IBAction) pressButton: (id)sender {...} 
// I retrieve the data and store in the arr 

// In TableView.m 
// I want to pass the arr to here and use 

我知道如何從這個website創建表,但我不知道如何從一個類(MyViewController.m)傳遞參數到其他類(TableView.m)。任何人都可以幫助我嗎?非常感謝你。

回答

0

在你的TableView的ViewController創建的NSMutableArray這樣

IBOutlet NSMutableArray *PassedArray; 
@property(nonatomic,retain) NSMutableArray *PassedArray; 
@synthesize PassedArray; 
[PassedArray release]; 

現在你可以從你的Myviewcontroller通過NSMutableArray中值使用此

tableviewcontroller *objInstance = [[tableviewcontroller alloc]initWithNibName:@"tableviewcontroller" bundle:nil]; 
objInstance.PassedArray = NSMutableArray;//Here you declare your passed NSMutableArray 
[self.navigationController pushViewController:objInstance animated:YES]; 
[objInstance release]; 

另一種方法就是聲明的NSMutableArray * yourArray是全局的tableviewcontroller在MyViewController.h和extern中這些變量在tableviewcontroller.m中是這樣的

extern NSMutableArray *yourArray; 
1
  1. 在TableView.h,申報方法:

    - (void)doWhateverWithArray: (NSArray *)anArray; 
    
  2. 在TableView.m,實現做任何你需要做的的方法。

  3. 在MyViewController.m,接近文件的頂部(外@implementation ... @end)寫#import "TableView.h"

  4. 發送-doWhateverWithArray:你的表視圖,如果必要。

函數調用是過程式編程語言(如C語言)的基本部分;消息派發(AKA方法調用)是Objective-C等面向對象編程語言的基礎部分。

這個問題的性質表明你剛剛開始進入編程(如果我錯了,請不要把它當成侮辱 - 事實並非如此)。我肯定人們可以推薦任何數字的介紹文本C或Objective-C,但如果我在你的鞋子,我會走得更遠。

如果您有時間和奉獻精神,我建議您參加大學水平的編程課程,甚至在大學水平參加計算機科學學位課程。 :)

+1

(我還建議你在Objective-C開始之前充分研究學習C)。 – 2010-07-16 05:00:53

+0

完全學習C嗎? C漸近方法的知識1.;) – 2010-07-16 05:33:12

+0

同意@chpwn。這個問題暗示對於面向對象編程的基礎知識缺乏瞭解。 – 2010-07-16 05:45:37

相關問題