0

uiimageMainViewController で選択しuiimagepickercontrollerたものを SecondViewControllerに渡す方法は? SecondViewController にプッシュしましたが、uiimage空です。

私はウェブを検索し、解決策を試しましたが、それでもうまくいきません。

photoImageuiimageviewSecondViewController で宣言したものです。

- (void)imagePickerController:(UIImagePickerController *) picker didFinishPickingMediaWithInfo:(NSDictionary *)info
{
   [picker dismissModalViewControllerAnimated:YES];

    SecondViewController *secondVC = [[SecondViewController alloc] initWithNibName:@"SecondViewController" bundle:nil];
    [secondVC.photoImage setImage:[info objectForKey:@"UIImagePickerControllerEditedImage"]];
    [self.navigationController pushViewController:secondVC animated:YES];
    [secondVC release];
}
4

2 に答える 2

0

画像を保存する共有クラスを作成し、どこからでもアクセスできます。

MainViewController でその共有クラスの ivar にその画像を割り当て、SecondViewController でそれにアクセスします。

編集 :

以下のコードは、共有クラスを実装する方法を示しています。これは構文的に正しくない可能性があります。現在、私は mac を使用していないため、コンパイルできません。

@interface SomeManager : NSObject
    +(id)myImage;
@end

@implementation SomeManager
    +(id)myImage{    
        static id myImage= nil; 
        @synchronized([self class]){ 
            if (myImage== nil) { 
                myImage= //put your image here; 
            } 
        }
        return myImage;
    }
 @end
于 2012-11-25T13:37:22.443 に答える
0

2 番目のビュー コントローラーの Aは、そのコントローラーのメソッドが呼び出されるUIImageViewまで存在しません。を保持するviewDidLoadプロパティを配置し、(画像ビューを設定しようとする代わりに) ビュー コントローラーをプッシュするときに使用する画像への参照を格納し、呼び出しを 2 番目のビュー コントローラーの `viewDidLoad` に移動します。 `。SecondViewControllerUIImagesetImage:

于 2012-11-25T14:11:55.390 に答える