1、计算UILabel的右侧有一条灰色的竖线
问题:在对UILabel进行frame布局时,如果计算出宽度有小数,在某些机型会导致在UILabel的右侧又一个竖线,所以需要给UILabel的宽度取整
-
IOS UILabel显示右边出现一条竖线问题
处理方法:对宽度向下取整就可以解决问题了
向上取整:ceilf(x)
向下取整:floor(x)
四舍五入:roundf(x)
2、UITableView偶尔在调用reloadData
时会跳动
问题:在开发一个简单页面时,由于要在多个地方用到刷新数据、展开收起的功能,一开始使用
reloadsections
发现header有明显变化感和跳动感,然后使用reloadIndexPaths
,结果会有跳动感,之后使用reloadData
,跳动感减少,但偶尔还是会有
-
较为优雅地解决UITableView在reloadData时跳动的问题
处理方法(缓存高度):
- (CGFloat)tableView:(UITableView *)tableView estimatedHeightForRowAtIndexPath:(NSIndexPath *)indexPath
{
NSNumber *heightNumber = [self.cellHeightDict objectForKey:indexPath];
CGFloat height = 50;
if(heightNumber)
{
height = heightNumber.floatValue;
}
return height;
}
- (void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath
{
CGFloat cellHeight = cell.frame.size.height;
[self.cellHeightDict setObject:@(cellHeight) forKey:indexPath];
}
系统粗体
iOS在设置里开启了粗体后内容显示不全的问题解决方式
UIButton 在粗体文本下的bug
其他解决方式:在layoutSubView里调用Button/UILabel的 sizeTofit
网友评论