2016-08-05 3 views
0

Мое приложение состоит из колоды карт. Каждая сама карта создается в классе под названием draggableview. В Draggableview есть scrollview, так что пользователь может прокручивать кучу изображений, относящихся к карте. На первом представлении есть кнопки, которые я создал в draggableview.xib и их методы в классе draggableview. Однако, когда вы просматриваете первый вид, все остальные представления не имеют этих кнопок.Ограничения с несколькими областями

EDIT: Я частично решил свою проблему. В initwithView я добавил каждую кнопку в качестве подстраницы draggableview. Теперь кнопки отображаются во всех представлениях scrollview. В раскадровке я удалил и добавил новые ограничения. И в раскадровке кнопки перемещаются соответственно. Однако в симуляторе они застревают в правом углу экрана.

Для этой первой попытки я сделал это сначала с помощью одной кнопки (кнопка обзора).

мой метод initWithFrame:

- (id)initWithFrame:(CGRect)frame 
{ 
    self = [super initWithFrame:frame]; 
    if (self) { 
     [self addSubviewFromNib]; 
     [self setupView]; 
     panGestureRecognizer = [[UIPanGestureRecognizer  alloc]initWithTarget:self action:@selector(beingDragged:)]; 
     cardWidth = frame.size.width; 
     cardHeight = frame.size.height; 
     type = 0; 
     panGestureRecognizer.delegate = self; 
     panGestureRecognizer.cancelsTouchesInView = NO; 
     _backgroundScrollView.panGestureRecognizer.cancelsTouchesInView = NO; 

     likeBadge.image = [UIImage imageNamed:@"likeBadge"]; 
     likeBadge.alpha = 0; 
     likeBadge.layer.zPosition=99; 
     passBadge.image = [UIImage imageNamed:@"passBadge"]; 
     passBadge.alpha = 0; 
     passBadge.layer.zPosition=99; 
     self.backgroundScrollView.contentSize = self.bounds.size; 
     [self addSubview: reviewButton]; 
     [self addGestureRecognizer:panGestureRecognizer]; 
    } 
    return self; 
} 

Как это выглядит в тренажере: enter image description here

+0

Какие кнопки? 'likeBadge' и' passBadge'? И являются ли они детьми перетаскиваемого вида, а не прокрутки? Это резко изменило бы мой ответ. – danh

+0

Нет - кнопки, о которых я говорю, являются, я полагаю, загруженными из addSubViewFromNib (см. Мой предыдущий комментарий ниже о моей ошибке). Это, в частности, телефоны, карты, меню, просмотр и общие кнопки. И да, это дети draggableview (файл nib), а не прокрутка. – Matt

+0

Установили ли вы цвет основного содержимого для очистки? Это отличается от установки его альфа до нуля. – danh

ответ

0

В дополнение к добавлению каждой кнопки как подвид из draggableView в initWithFrame, я также добавил ограничения каждой кнопки программно. По какой-то причине это позволило мне перемещать кнопки вокруг (тогда как ничего в раскадровке не было успешным), и теперь они находятся во всех взглядах scrollview.