0

以下のテクニックを使用してビューをコピーしていますが、すべて問題ありませんでしたが、iOS 9 では、使用されている画像を cloneView にコピーできません。

let cloneView =  NSKeyedUnarchiver.unarchiveObjectWithData(
    NSKeyedArchiver.archivedDataWithRootObject(view1))

誰でもこれを解決するのを手伝ってくれますか? どんなアドバイスでも結構です。

4

1 に答える 1

0

私はあなたview1がであり、 APIUIImageViewからそれに画像を割り当てていると仮定しています。imageNamed:

view1.image = [UIImage imageNamed:@"abc.png"];

これは私には機能しないため、iOS8で機能するようになったのは少し奇妙です。

アーカイブ/アーカイブ解除メソッドの内部実装はわかりませんが、ビューのイメージのコピーを作成できないと推測しました。UIImageのコンテンツをソース ビューにロードすることで、これを解決できます。

NSString *path = [[NSBundle mainBundle] pathForResource:@"abc" ofType:@"png"];
view1.image = [UIImage imageWithContentsOfFile:path];

これで、ビューをコピーして、クローン ビューにもイメージを取得できます。

于 2015-10-06T14:20:33.417 に答える