Eya*_*yal 34 iphone objective-c uitableview ios
在iOS 7中,表格视图的分隔线比以前的ios更薄,看起来像是0.5像素的宽度.
我需要用一个相似的分隔线(仅垂直)将单元格拆分为2,我希望这条线与常规分隔线的宽度相同.
所以我想知道添加这样一条线的最佳方法是什么?
如果我使用a UIView
并将其宽度设置为0.5它将不可见,如果我将其宽度设置为1.0,我当然会获得1.0px而不是0.5px的线宽.
我尝试使用视网膜大小为1.0px的资源,但它没有效果......
Som*_*Guy 24
您将宽度设置为0.5 - 或使其始终为1像素,然后将其设置为 (1.0 / [UIScreen mainScreen].scale)
我以前做过这个,它运行良好
我认为你无法看到它的原因是你正确地将线条居中放在屏幕中间,这将使得线条的原点(320 - 0.5)/ 2.0,是X原点159.75 - 0.75可能是搞砸了 - 或者单元格正在删除视图的背景颜色
ant*_*yqz 24
我做了这个步骤:
这个对我有用.
Iri*_*siu 14
假设您使用Storyboards进行单元格布局:
将具有所需高度和1px宽度的UIView放入您的单元格中.给它你想要的任何背景颜色.标准分色器颜色约为.RGB(200199204).
然后创建UIView的子类,例如HairlineView
和覆盖awakeFromNib()
-(void)awakeFromNib {
self.layer.borderColor = [self.backgroundColor CGColor];
self.layer.borderWidth = (1.0 / [UIScreen mainScreen].scale) / 2;
self.backgroundColor = [UIColor clearColor];
}
Run Code Online (Sandbox Code Playgroud)
您在1px宽视图周围绘制边框,宽度为2*0.25px,总计为0.5px,这是您想要达到的宽度,然后通过将背景设置为清除来隐藏视图的背景.最后一步很重要,没有它就行不通.
将视图类型设置为HairlineView,然后它应该工作.
以编程方式执行此操作时,您必须覆盖其他方法,例如,initWithFrame()
可能,因为只有在从Storyboard布局创建视图时才会调用awakeFromNib().
kie*_*tux 11
上面的一些答案已经是正确的,但只是更新:在Xcode 8中,现在您可以使用十进制数设置布局约束的常量.不再需要通过用户定义的运行时属性连接IBOutlet或设置常量.
归档时间: |
|
查看次数: |
20558 次 |
最近记录: |