2011-11-15 8 views
-1

私は現在、多くのビューを使用するアプリケーションを持っています。各ビューはカメラビューを使用します。アプリのユーザーはあるビューで特定のアイテムを選択でき、そのアイテムはカメラビューに表示されます。基本的には、そのアイテムを使って写真を編集することができます。複数のビューの単一カメラビュー

私の問題は、あまりにも多くのカメラビューがあり、それはあまりにも多くのスペース/メモリを占有するということです。そして私は自分のアプリ全体に対して1つのカメラビューしか使用しません。だからそれは私の質問に私を連れて行きます...

ユーザーが私のビューの中にあるアイテムをタップすると。彼/彼女がカメラビューでタップしたアイテムを表示する適切な方法は何ですか?

、これはあまりにも混乱している場合はごめんなさい...

+1

あなたが作業しているどのようなプラットフォーム/ OS?あなたの質問から言うことは不可能です。 –

+0

お詫び申し上げます、私はiPhoneのiOSプラットフォームで作業しています。 – Nakioki

答えて

0

は、カメラビューとあなたの選択したアイテムへのポインタ1つのコントローラクラスを持っています。メソッドsetItem:を書くと、@property UIView *itemのデフォルト設定を上書きします。その方法の実装では、[cameraView addSubview:item]は、望むなら、名前付きの項目をカメラビューのオーバーレイとして追加する必要があります。それを削除するには、がnilであっても、それでも正常に実行され、何もしませんので、毎回これを行うようにしてください。[item removeFromSuperview]を使用してください。上記のため

コード:


Controller.h

@property (nonatomic, retain, setter = setItem:) UIView *item; 
@property (nonatomic, retain) UIView *cameraView; 

Controller.m

@synthesize item, cameraView;  

- (void)setItem:(UIView *)newItem 
{ 
    [item removeFromSuperview]; 
    [item release]; 
    [newItem retain]; 
    item = newItem; 
    [cameraView addSubview:item]; 
} 
関連する問題