Iphone UITableViewCell奇怪的宽度?
我用IB中创建的UITableViewCell设置了一个UITableView(320宽),该单元格也是320宽。在UITableViewCell(或我的子类正确)中设置背景图像(320宽)后,我注意到这些单元格不在UI的右侧(注意所选单元格上的蓝色和上面的灰色),有人知道这是什么原因吗Iphone UITableViewCell奇怪的宽度?,iphone,objective-c,cocoa-touch,Iphone,Objective C,Cocoa Touch,我用IB中创建的UITableViewCell设置了一个UITableView(320宽),该单元格也是320宽。在UITableViewCell(或我的子类正确)中设置背景图像(320宽)后,我注意到这些单元格不在UI的右侧(注意所选单元格上的蓝色和上面的灰色),有人知道这是什么原因吗 干杯Gary我在UITableView上设置分隔符样式和分隔符颜色,这将使分隔符的单元格高度减少1个像素,并将背景向右偏移约5个像素。如果我将进入单元格的背景图像从320x65减少到320x64,则它完全适合
干杯Gary我在UITableView上设置分隔符样式和分隔符颜色,这将使分隔符的单元格高度减少1个像素,并将背景向右偏移约5个像素。如果我将进入单元格的背景图像从320x65减少到320x64,则它完全适合,没有偏移 以下两个屏幕之间的唯一区别是: 左:UITableView separator=“无”(UITableView单元格背景没有偏移) 右:UITableView separator=“单行”(UITableView单元格背景有偏移) 数据:
- 单元分辨率:320x65
- 单元视图:320x65
- 单元格背景图像分辨率:320x65
干杯Gary在我看来,您只是没有正确设置背景图像视图的内容模式(即,您将其设置为aspectFit或其他)。你确定它的偏移量是5,而不是缩小了5个像素吗
例如,如果原始图片为320x65,高度降低到64,aspectFit将在保持相同纵横比的情况下将其缩放到
64/65*320~=315
确保单元格的contentView也具有正确的宽度。很难看到它隐藏在单元格边缘之外。您在右侧看到的蓝色是您在选择单元格时看到的完整高光。如果对图像进行缩放,您也会看到顶部或底部显示蓝色。同样有趣的是,当你关闭分离器时,它神奇地开始工作,所以我猜它会正确安装。我刚刚通过在一个黑色单元格320x65周围放置一个1像素的白色边框来测试这一点,边框上的分离器完全接触到单元格的所有侧面,除了右边的白色背景,如下图所示。所以高度是正确的,它是缩放的宽度。如果我读对了,你有一个320x65的图像,除了白色边框外,全是黑色。如果这是真的,那么在打开分隔符的情况下,您正在将一个320x65图像装配到一个320x64视图中,由于纵横比的原因,这会使图像缩放到315x64。同样,正确设置contentMode可以解决这个问题(在这种情况下,您需要scaleToFit)。