1

画面に新しいビューを表示したい。表示する前に、カメラでキャプチャしたばかりの画像で初期化したいと思います。これはコードの一部です:

[self.view addSubview:self.photoPreviewView.view];    
UIImageView *photo = self.photoPreviewView.imageView;
[[self captureManager] captureStillImage:photo];

お気づきのとおり、最初に addSubView を呼び出し、後で写真を設定します。「imageView」(「photoPreviewView.imageView」の)は「addSubView」を呼び出した後にのみアクセスできるため、これを行います。

これは、最初にビューが白で表示され、その後に写真が表示されるという、あまり良くないエクスペリエンスを生み出します。

この問題を処理する方法はありますか?

4

2 に答える 2

1

あなたの質問を理解することはできませんが、
コードの前にこれを試すことができます:

[self.photoPreviewView.view addSubview:nil];

imageViewのプロパティにアクセスできるようになるかもしれませんphotoPreviewView

うまくいくかどうか教えてください。

于 2011-06-11T21:30:02.647 に答える
1

本当に十分な情報ではありません。photoPreviewView が NIB ファイルからロードして作成され、imageView が IBOutlet である場合、photoPreviewView のビュー属性にアクセスするまで、imageView のリンケージは確立されません。

この場合は、単純に

[self.photoPreviewView view];
[[self.captureManager captureStillImage:self.photoPreviewView.imageView];
[self.view add subView;self.photoPreviewView.view];
于 2011-06-11T21:52:05.957 に答える