SSCollectionView SSCollectionViewItem - элементы не отображаются - PullRequest
0 голосов
/ 22 июля 2011

Я столкнулся с трудностями с SSCollectionView и SSCollectionViewItem.

Прежде всего, я хотел бы инициализировать его из IB.Но это не сработает для меня.У меня есть SelectFooViewController, который:

@interface SelectFooViewController : SSCollectionViewController { ... }

, и я использую его как filesOwner соответствующего XIB.

 SelectFooViewController* selectFooVC = [[SelectFooViewController alloc]
 initWithNibName:@"SelectFooViewController" bundle:nil];

Но так как он не работает, мне пришлось инициализировать его свойства внутри viewDidLoad () себя.

Кроме того, я не могу отобразить ничего, кроме backgroundColor моих SSCollectionViewItems.То, что я хочу, это textLabel и изображение.

- (SSCollectionViewItem *)collectionView:(SSCollectionView *)aCollectionView itemForIndexPath:(NSIndexPath *)indexPath {
    SSCollectionViewItem *item = [[[SSCollectionViewItem alloc] initWithStyle:SSCollectionViewItemStyleImage reuseIdentifier:itemIdentifier] autorelease];

    SSLabel* label = [[SSLabel alloc] init];
    [label setText:@"foo"];
    item.imageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"foo.png"]];
    item.textLabel = label;
    [label autorelease];

    return item;
}

Я могу подтвердить, что методы делегата (для определения количества строк, разделов и т. Д.) Реализованы и работают должным образом.Но все мои вещи пусты - но реагируют на них с ожидаемым всплывающим окном.

Кто-нибудь видит ошибку в том, что я сделал?- Спасибо ...

РЕДАКТИРОВАТЬ: Мне также не удалось отобразить локальное изображение, изменив проект SSCatalog

Ответы [ 2 ]

2 голосов
/ 03 августа 2011

Я только что понял, что мне нужно самому устанавливать фрейм каждого свойства (textLabel, detailTextLabel и imageView). Это исправило это.

0 голосов
/ 22 июля 2011

Когда вы создаете экземпляр SelectFooViewController, просто вставьте эту строку

selectFooVC.view;

или

selectFooVC.view.hidden = NO;

, а затем добавьте его в представление.

Это потому, что представлениене инициализируется, пока вы не получите к нему явный доступ.Следовательно, ваши товары загружаются только тогда, когда вы нажимаете на них, а не сразу.Вы можете назвать это взломом, но я не называю это одним.: -)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...