Pertanyaan tambahkan aplikasi crash subview TableView


Saya mencoba menambahkan tampilan tabel jadi ketika seseorang menekan tombol tertentu, tampilan akan beralih ke tampilan tabel dengan beberapa pilihan.

Ini kode saya untuk tombol:

-(IBAction)buttonPressed:(id)sender  
    {
         LevelChoice *level = [[LevelChoice alloc] initWithNibName:nil bundle:nil];
         [self.view addSubview:level.view];
         [level release];   
   }

Berikut adalah snap kode dari subkelas UITableViewController saya:

LevelChoice.h Kode:

@interface LevelChoice : UITableViewController {
    NSArray *choices; 
}

LevelChoice.m

Kode:

-(void)viewDidLoad
{ 
    choices = [[NSArray alloc] initWithObjects:@"Level 1", @"Level 2", @"Level 3", nil];

    [super viewDidLoad];

}

Kode:

-(NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
{
    return 1;
}

-(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section

{
    return 3;
}

-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath

{
    static NSString *CellIdentifier = @"Cell";
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];

    if (cell == nil)
    {
        cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] autorelease];

     }
  cell.text = [choices objectAtIndex:indexPath.row];
  return cell;

}

Apakah ada yang tahu apa yang hilang?


4
2017-08-10 07:33


asal


Jawaban:


Bedakan antara Pengendali dan Tampilan. Kamu bisa

  1. baik menyajikan UITableViewController dengan presentModalViewController:animated: atau dengan pushViewController:animated:. (Ya, dalam hal ini Anda bisa melepaskannya.)
  2. atau simpan saja UITableView di pengontrol tampilan yang ada dan tampilkan atau sembunyikan seperlunya dengan hidden milik. Tentu saja Anda perlu mengimplementasikan datasource dan delegate metode untuk meja.

1
2017-08-10 08:24