Один вид камеры для нескольких видов - PullRequest
0 голосов
/ 15 ноября 2011

В настоящее время у меня есть приложение, которое использует много просмотров. Каждый вид использует вид с камеры. Пользователь приложения может выбрать определенные элементы в одном представлении, и этот элемент будет отображаться в представлении камеры. По сути, они могут использовать этот элемент для редактирования своей картинки.

Моя проблема в том, что у камеры слишком много обзора, и она занимает слишком много места / памяти. И я хочу использовать только один вид камеры для всего моего приложения. Так что это подводит меня к моему вопросу ...

Когда пользователь нажимает на элемент внутри одного из моих представлений. Как правильно показывать тот предмет, который он / она нажал на экране камеры?

Извините, если это слишком запутанно ...

1 Ответ

0 голосов
/ 16 ноября 2011

Есть один класс контроллера, который указывает на вид камеры и выбранный вами элемент.Вы можете написать метод setItem:, который переопределяет установщик по умолчанию для @property UIView *item.В вашей реализации этого метода [cameraView addSubview:item] должен добавить именованный элемент в качестве наложения на изображение с камеры, если вы этого хотите.Чтобы удалить его, используйте [item removeFromSuperview] (делайте это каждый раз, поскольку, даже если item равно nil, оно все равно будет работать правильно, оно просто ничего не будет делать).

Код для вышеперечисленного:


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];
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...