dhr*_*hrm 3 cocoa-touch objective-c aqgridview
我正在尝试在我的iPad应用程序中实现AQGridView.请看下面的图片 - 抱歉颜色很强,但我认为这有助于您了解我的问题.
每个单元格(蓝色框)具有左右边距(黄色),即8个像素.这意味着第一个黄色的coloum宽度为8px,第二个为16px,第三个为16px,最后一个为8px.在某些情况下这可能很好,但我希望黄色列具有相同的宽度.在我的例子中,列的总宽度是48(8 + 16 + 16 + 8),所以我希望每列的宽度为12(48/4).如何更改AQGridView来执行此操作?
我试图改变框架和反弹的AQGridView,但没有做任何事情.

AQGridView实际上获取容器视图的坐标并从中创建严格定义的网格.因此,如果您有一个768px宽的网格视图,以及宽度略小于1/3的项目,那么它将创建一个刚性网格来放置这些项目.默认情况下,您的AQGridViewCell视图将在每个网格方框中居中(尽管您可以调用-setResizesCellWidthToFit:YES以更改它); 您可以通过-gridView:adjustCellFrame:withinGridCellFrame:在实施中AQGridViewDelegate实施来调整该定位.
在您的情况下,每个单元格的左侧和右侧的边距为8px.在外边缘,这是单独看到的,但在成对之间,它看起来加倍到16px(每个单元8px).
那么,你想要的是每个单元格具有6px的边距,并且网格本身在所有单元格的左侧和右侧具有另外6px的边距空间.这有一个API:
@property (nonatomic, assign) CGFloat leftContentInset;
@property (nonatomic, assign) CGFloat rightContentInset;
Run Code Online (Sandbox Code Playgroud)
你应该做的是设置myGridView.leftContentInset = 6.0;和myGridView.rightContentInset = 6.0;.然后,网格视图将布置内容宽度为756px而不是768px的单元格,这样可以在每个单元格周围提供6px的边距.将它与6px左右内容插件相结合,您将在每个单元格和网格视图的外边缘之间有一个干净的12px可见边距.
附注:实际创建了内容插入属性,以帮助每行布置一定数量的单元格.例如,1024不会除以5,因此最终会有一些相当小的单元格被分散,因为布局网格的宽度只包含4个项目.但是,通过添加每个2px的左右内容插入,视图将使用1020的宽度来计算其布局网格,从而每行产生5个单元格.事实上,这正是我们在旋转到横向模式时在Kobo iPad应用程序中所做的事情; 如果没有这个改变,我们的每行肖像模式4个项目就会散开,看起来有点太稀疏了.
| 归档时间: |
|
| 查看次数: |
2858 次 |
| 最近记录: |