8

画像がXMLファイルとしてURLからレンダリングされるテーブルビューコントローラに画像を表示しています。スクロールビューとして画像を一覧表示するとうまく機能します。ここで特定の画像を選択したいのですが、ウィンドウには選択したセル画像のみが表示されます。このために、セルの値を取得する必要がありますか。もしそうなら、どうすれば特定のセル値を取得し、それに対応する画像をコレクションビューとして次のウィンドウに表示できますか。

親切に私にアイデアを提案してください。理解を深めるために、ストーリーボードが現在どのように表示され、出力がどのように必要かを画像の下に貼り付けました。 ストーリーボードと出力

あなたが私の問題を理解してくれることを願っています。

4

4 に答える 4

25
-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
// here we get the cell from the selected row.
          UITableViewCell *selectedCell=[tableView cellForRowAtIndexPath:indexPath]; 

// perform required operation
         UIImage * image =selectedCell.image;

// use the image in the next window using view controller instance of that view.
}
于 2013-01-28T13:04:50.493 に答える
2

UITableViewDelegateを使用する必要があります

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath;

indexPathは、選択した行のセクション数と行数を返します。

indexPath.section;
indexPath.row

はっきりしているといいのですが。詳細については、次のチュートリアルを参照してください。http: //www.edumobile.org/iphone/iphone-programming-tutorials/using-iphone-tableview-for-displaying-data/ http://www.raywenderlich.com/ 1797 / how-to-create-a-simple-iphone-app-tutorial-part-1

于 2013-01-28T13:12:17.043 に答える
1

この場合、行の各画像のIDを維持する必要があると思います。行ごとに1つの画像がある場合は、行番号になる可能性があります。その後から

-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath

IDを次のViewControllerに渡すことができます。このViewControllerでは、このIDを使用して、コレクションビューを作成するために必要なデータを取得する必要があります。お役に立てれば。

于 2013-01-28T13:10:30.910 に答える
0

私にとってこれは機能しています。

-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
    UITableViewCell *cell = [tableView cellForRowAtIndexPath:indexPath];
    customerVC = [[UIStoryboard storyboardWithName:@"Main" bundle:nil]instantiateViewControllerWithIdentifier:@"customerInfoView"];

    customerVC.selectedText = cell.textLabel.text;
    //customerVC is destination viewController instance)

    [self.navigationController pushViewController:customerVC animated:YES]; 
}

そして、宛先のView Controllerヘッダーファイルで、次のような文字列を宣言するだけです。

@property NSString *selectedText;

viewcontroller.mで次のような値を割り当てます

self.selectedBiller.text = self.selectedText;

(selectedBillerはここのラベルです)

于 2015-05-19T07:36:25.383 に答える