0

下の図のように、ストーリーボードの他のビューに接続するさまざまなセルとセクションを使用して、プログラムで UITableView を作成します。

私の質問は:

これらの 3 つのセルをこれらの異なるビューに接続する方法を教えてください。

前もって感謝します!

これが私のコードです:

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
NSString *key = [[self sectionKeys] objectAtIndex:[indexPath section]];
NSArray *contents = [[self sectionContents] objectForKey:key];
NSString *contentForThisRow = [contents objectAtIndex:[indexPath row]];

static NSString *CellIdentifier = @"CellIdentifier";

UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil)
{
    cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault 
reuseIdentifier:CellIdentifier];
}

[[cell textLabel] setText:contentForThisRow];
return cell;

}



- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
_selectedIndex = indexPath.row;
[self.tableView reloadData];

}

編集: このメソッドを使用すると、ユーザーが欠席セルを選択しても WorkTime ビューが読み込まれます。理由を知っている人はいますか?

  - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
 {
  _selectedIndex = indexPath.row;
[self.tableView reloadData];
//maybe you could use a switch/case here, to assign the correct string to the segue identifier.
 switch (indexPath.row){
    case 0:
        [self performSegueWithIdentifier:@"test" sender:self];
        break;
    case 1:
        [self performSegueWithIdentifier:@"set" sender:self];
        break;
    case 2:
        [self performSegueWithIdentifier:@"get" sender:self];
        break;
 }
 }
4

1 に答える 1

1

最後の方法はあなたが行きたい方法ですが、見た目では、そうでindexPath.sectionないことを確認する必要がありますindexPath.row

于 2012-08-10T13:21:54.500 に答える