0

コレクション ビュー コントローラーを使用してサムネイルを表示しています。サムネイルをクリックすると、セグエが開き、モーダルで完全な画像が表示されます。シミュレーターでは問題なく動作しますが、iPhone や iPad では動作しません。完全な画像は空白です。「コメント」はすべてのデバイスに表示されます。

セグエは次のとおりです。

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
    if ([segue.identifier isEqualToString:@"showBandPhoto"]) {
        NSArray *indexPaths = [self.collectionView indexPathsForSelectedItems];
        BDBPhotoViewController *destViewController = segue.destinationViewController;
        NSIndexPath *indexPath = [indexPaths objectAtIndex:0];

        PFObject *tempObject = [imageObjectsArray objectAtIndex:indexPath.row];
        PFFile *imageFile = [tempObject objectForKey:@"image"];
        NSData *imageData = [imageFile getData];
        UIImage *image = [UIImage imageWithData:imageData];
        destViewController.bandImageName = image;
        NSLog(@"image is %@", image);
        NSString *commentGet = [tempObject objectForKey:@"comment"];
        destViewController.comment = commentGet;

写真コントローラー viewDidLoad のコードは次のとおりです。

self.photoImageView.image = bandImageName;
    self.commentLabel.text = comment;
4

3 に答える 3

0

なぜこれが機能したのかはわかりませんが、取得を Parse から viewDidLoad に移動し、そこに画像配列を作成しました。セグエが呼び出されると、Parse にクエリを実行するのではなく、配列から画像を取得します。

于 2013-07-16T11:05:52.700 に答える
0

私にとっての問題は、画像の命名に拡張子を追加したことです。シミュレーターはイメージを読み取ることができましたが、デバイスを読み取れませんでした。拡張機能を削除すると、機能しました。

さらに、この投稿で説明されているように 、iPhoneアプリの画像はシミュレーターに表示されますが、デバイスにコンパイルされたときは表示されません

Mac ファイル システムでは大文字と小文字が区別されず、iOS ファイル システムでは大文字と小文字が区別されます。あなたの問題は、画像の命名が原因である可能性があります。

于 2017-03-14T17:56:30.057 に答える
0

を使用する代わりに、を使用してUIImageViewみてくださいPFImageView。このサブクラスを使用すると、Parse から直接画像データを簡単にロードできます。

于 2013-07-14T16:21:38.157 に答える