2014-09-28 31 views
1

UICollectionViewFlowLayout ...在UICollectionViewFlowLayout中,從Storyboard設置單元格itemSize?

@interface MediumBounce : UICollectionViewFlowLayout 
@property (nonatomic, strong) UIDynamicAnimator *animator; 
etc 

@implementation MediumBounce 

-(void)prepareLayout 
    { 
    [super prepareLayout]; 
    self.scrollDirection = UICollectionViewScrollDirectionHorizontal; 
    self.minimumInteritemSpacing = 0; 
    self.minimumLineSpacing = 0; 
    self.itemSize = CGSizeMake(92,144); 
    self.sectionInset = UIEdgeInsetsMake(0, 0, 0, 0); 
    } 

-(NSArray *)layoutAttributesForElementsInRect:(CGRect)rect 
    { 
    if(self.animator) 
    etc etc etc 

您必須設置.itemSize ...

所以我有很多收集意見,單元尺寸爲92.144。但在另一個收集視圖中,單元格大小爲200.144。

對於那個,我只是複製類,命名新類MediumBounce200,並將代碼行設置爲.itemSize爲200.144。

有沒有更好的方法?你可以以某種方式從故事板中讀取尺寸嗎?

或者可能從集合VC,你可以「伸手」並設置?什麼時候?

(請注意,您使細胞在故事板大小,我敢肯定,其實並不重要:大小僅受的FlowLayout上面的代碼中設置)

回答

0

對於問題Can you read the size from the storyboard somehow?

有一種方法。

  1. 在viewController中可能選擇故事板中的集合視圖。在身份檢查
  2. 設置視圖的運行時屬性 - >User Defined Runtime Attributes
+0

嗨Dopcn,UDRA往往是非常有用的,但我絕對不想在這裏使用他們,我想從故事板直接得到它,怎麼樣設計師將它塑造在故事板上。 (對於U.D.R.A.順便說一句,如果有人想知道http://stackoverflow.com/a/15007600/294884,這裏是一個例子) – Fattie 2014-09-28 14:18:41

相關問題