1

iphone開発初心者です。テーブルにデータの配列を表示しています。行をクリックすると、対応する詳細ビューに移動します。テーブルで選択した行に対応する詳細ビューにタイトルを表示したい。

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { 
    if([[tableList objectAtIndex:indexPath.row] isEqual:@"Display The Text"])
    {  
        secondviewcontroller *second= [[secondviewcontroller alloc] initWithNibName:@"secondviewcontroller" bundle:nil];
        [self.navigationController pushViewController:second animated:YES];
    }

    if([[tableList objectAtIndex:indexPath.row] isEqual:@"iPhone Image"])
    {  
        thirdviewcontroller *third= [[thirdviewcontroller alloc] initWithNibName:@"thirdviewcontroller" bundle:nil];
        [self.navigationController pushViewController:third animated:YES];
    }
}

「テキストを表示する」が選択されている場合、対応するナビゲートされたビューのタイトルは、ヘッダーのタイトルとしてナビゲーション バーの下に「テキストを表示する」に設定されている必要があります。「iphone 画像」が選択されている場合、対応するビューは、タイトルがヘッダーのタイトルとして、ナビゲーション バーの下に「iphone 画像」。

助けてください。ありがとう。

4

2 に答える 2

2

secondviewcontroller と thirdviewcontroller で文字列プロパティを宣言し、次のコードを追加します。それはうまくいくはずです。

if([[tableList objectAtIndex:indexPath.row] isEqual:@"Display The Text"])
    {  
        secondviewcontroller *second= [[secondviewcontroller alloc] initWithNibName:                          
                           @"secondviewcontroller" bundle:nil];  
         [self.navigationController pushViewController:second animated:YES];
         second.lblTitle = [tableList objectAtIndex:indexPath.row];
    }


    if([[tableList objectAtIndex:indexPath.row] isEqual:@"iPhone Image"])
    {  
        thirdviewcontroller *third= [[thirdviewcontroller alloc] initWithNibName:@"thirdviewcontroller" bundle:nil];
        [self.navigationController pushViewController:third animated:YES];
         third.lblTitle = [tableList objectAtIndex:indexPath.row];
    }
于 2010-01-29T11:39:09.733 に答える
1

ナビゲーション スタックにプッシュする前に、View Controller のタイトルを設定します。あなたの場合:

second.title = [tableList objectAtIndex:indexPath.row];
于 2010-01-29T10:29:22.670 に答える