設置UITableVIewCell 縮進,只有文字縮進 圖片不動的解決方法 ios
解決方法:app
新建一個UITableViewCell的子類 :ChildTableViewCellui
重寫- (void)layoutSubviews方法spa
- (void)layoutSubviews { [super layoutSubviews]; CGRect frame = self.imageView.frame; frame.origin.x = self.indentationLevel*self.indentationWidth; self.imageView.frame = frame; }
在tableView的cellForRow里加載剛纔建立的UITableViewCell的子類code
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { static NSString *ID = @"cell"; ChildTableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:ID]; if (cell == nil) { cell = [[ChildTableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:ID]; // 屏幕適配 CGFloat indentationLevel = ANScreenWidth / 26; cell.indentationLevel = indentationLevel; } ANLog(@"%zd", indexPath.row); NSArray *titles = @[@"Home", @"Settings", @"Profile"]; NSArray *images = @[@"IconHome", @"IconProfile", @"IconSettings"]; cell.textLabel.text = titles[indexPath.row]; cell.imageView.image = [UIImage imageNamed:images[indexPath.row]]; return cell; }
參考地址blog
http://stackoverflow.com/questions/21645356/ios-7-uitableviewcell-setindentationlevel-did-not-apply-for-imageview圖片
http://stackoverflow.com/questions/15924412/uitableviewcell-imageview-paddingit
http://stackoverflow.com/questions/19080039/ios7-uitableviewcell-image-left-offsetio