2015-01-14 4 views
0

Все,Добавление UICollectionView в UIView

Я добавляю UICollectionView к UIView, но это не в состоянии загрузить клетки, потому что кажется, что это:

[self.buttonsCollectionView registerNib:[UINib nibWithNibName:@"AccountMenuCollectionViewCell" bundle:nil] forCellWithReuseIdentifier:@"AccountMenuCell"]; 

становится загружен после того, как попадает делегатов для UICollectionView. Обычно это будет помещено в viewDidLoad, но недоступно в UIView.

- (AccountMenuCollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath { 

    AccountMenuCollectionViewCell *cell = [collectionView dequeueReusableCellWithReuseIdentifier:@"AccountMenuCell" forIndexPath:indexPath]; 

    [cell.accountMenuButton setTitle:@"Deposit" forState:UIControlStateNormal]; 

    return cell; 

} 

Любые указания?

EDIT:

Так я использую вид из раскадровки первоначально, а затем добавить подвид, который Меню счета. В этом представлении у меня есть Collection View.

+0

принять эту ссылку HTTP: //stackoverflow.com/questions/14466959/create-uicollectionviewcell-subclass-with-xib else использовать http://stackoverflow.com/questions/17856055/creating-a-uicollectionview-programmatically и, наконец, попробовать этот http: // принятие curve. net/archives/2012/09/a-simple-uicollectionview-tutorial/ –

+0

Не публикуйте код в комментарии. Когда люди запрашивают более подробную информацию, вернитесь и отредактируйте свой вопрос, чтобы сделать его более понятным. Это особенно важно с кодом, так как код все же нечитабелен в форме, отображаемой в комментарии. –

+0

Вам нужно добавить намного больше справочной информации (на ваш исходный вопрос). Используете ли вы раскадровки или XIB-файлы для создания этого представления? (контроллер просмотра?) Или вы создаете его с кодом? Подробно объясните жизненный цикл вашего вида коллекции. –

ответ

0

Попробуйте использовать с методом по умолчанию и создать экземпляр ячейки внутри cellForItem ...

- (UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath { 
AccountMenuCollectionViewCell *cell = [collectionView dequeueReusableCellWithReuseIdentifier:@"AccountMenuCell" forIndexPath:indexPath]; 
[cell.accountMenuButton setTitle:@"Deposit" forState:UIControlStateNormal]; 
return cell; 
} 

и .. проверить с Breakpoints, если ваш код работает ..

+0

Пробовал это, и он падает до того, как нанести удар по этому коду. –

+0

Вы помещаете контрольные точки, чтобы увидеть, где крутится ваше приложение? –