2

タブ付きのアプリケーション プロジェクトを開始しました。最初のビューで、入力されたリストを取得したいので、次のように NSArray を宣言しました。

@interface agrospineFirstViewController : UIViewController <UITableViewDelegate     ,UITableViewDataSource>
{
NSArray  *JournalList;
}
@property (nonatomic,retain) NSArray *JournalList;
@end

そして、私は .m に以下を追加しました:

[super viewDidLoad];

//initialisation de la liste
JournalList = [NSArray arrayWithObjects:@"journal1",@"journal2",nil];


//initialisation du table View 
UITableView* tableView=[[UITableView alloc] initWithFrame:[[UIScreen mainScreen] applicationFrame]style:UITableViewStylePlain];


//population de la vue


-(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
    return [JournalList count];
}

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *MyIdentifier = @"MyIdentifier";

UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:MyIdentifier];

if (cell == nil)

    cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:MyIdentifier];

// Configuration de la cellule

NSString *cellValue = [JournalList objectAtIndex:indexPath.row];
cell.textLabel.text = cellValue;
return cell;

}

テーブルリストもビューにドロップしました...しかし、numberOfRowsInSectionで「:」を「;」に置き換えるように求めるエラーが引き続き表示されます 改善するためのアドバイスはありますか?

お時間をいただきありがとうございます

4

2 に答える 2

2

次のようにviewDidLoadメソッドを閉じていないと思います:

- (void)viewDidLoad {
  [super viewDidLoad];

  //initialisation de la liste
  JournalList = [NSArray arrayWithObjects:@"journal1",@"journal2",nil];


  //initialisation du table View 
  UITableView* tableView=[[UITableView alloc] initWithFrame:[[UIScreen mainScreen] applicationFrame]style:UITableViewStylePlain];


  //population de la vue
}

-(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
    return [JournalList count];
}

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
  static NSString *MyIdentifier = @"MyIdentifier";

  UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:MyIdentifier];

  if (cell == nil)

    cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:MyIdentifier];

  // Configuration de la cellule

  NSString *cellValue = [JournalList objectAtIndex:indexPath.row];
  cell.textLabel.text = cellValue;
  return cell;

}
于 2012-04-12T09:45:06.033 に答える
2

あなたはこれを必要としません
UITableView* tableView=[[UITableView alloc] initWithFrame:[[UIScreen mainScreen] applicationFrame]style:UITableViewStylePlain];

テーブルをviewControllerに追加し、そのviewController名をこのようにappDelegateクラスに追加するだけです

UIViewController *homeViewController = [[[HomeViewController alloc] initWithNibName:@"HomeViewController" bundle:nil] autorelease];
self.tabBarController = [[[UITabBarController alloc] init] autorelease];
self.tabBarController.viewControllers = [NSArray arrayWithObjects:homeViewController,nil];

xibクラスでデリゲートとデータソース接続を与えるだけです

于 2012-04-12T10:14:40.367 に答える