2013-05-27 28 views
2

我想將NSCollectionView居中置於其包含的滾動視圖中(垂直水平地爲&)。獲取NSCollectionView的首選大小

如何確定集合視圖的理想尺寸,以便所有項目視圖都適合?

看起來,集合視圖總是會調整自身大小,以便在滾動視圖中放置時填充整個文檔視圖。

此外,如果未包含在滾動視圖中,則添加新項目時,集合視圖將不會更改其框架。

回答

0

我建議你自定義NSCollection視圖。你所能做的就是重寫NSCollectionView的「drawRect」方法並插入它自己的矩形。下面是什麼將解決您的問題

步驟來實現:

  1. 創建一個類「NSModifiedCollectionView」凡從NSCollection觀繼承並做到以下幾點。

    @interface NSModifiedCollectionView : NSCollectionView 
    
    @end 
    
    @implementation NSModifiedCollectionView 
    
    - (void) drawRect:(NSRect)dirtyRect 
    { 
        //You can inset more than 9.0 as per your needs but this will make you fit exactly 
        NSRect insetRec = NSInsetRect(dirtyRect, 9.0, 9.0); 
    
        [super drawRect:insetRec];} 
    

2:拖放NSCollectionView從你對象列表到廈門國際銀行和修改其自定義類來「NSModifiedCollectionView」。現在運行並檢查它應該如你所期望的那樣工作。

+0

這不起作用。項目仍然與左上邊緣對齊。這隻會影響收集視圖的背景。不管怎麼說,還是要謝謝你。 – Mark