7

我想做一个cell像邮件应用一样的滑动动作。

我设置UIImagebackgroundColor行动作。

 action.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"remove"]];

但是我在背景上并排重复了我的图像。像这样。

是图片大小问题吗?可以告诉我如何解决它,或者其他方法吗?

4

1 回答 1

13

是的,这是一个图像大小问题。即使我有类似的要求并面临同样的问题。在这种情况下,当您使用时,

action.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"remove"]];

即使您将 imageView.contentMode 设置为:

UIViewContentModeScaleAspectFit
UIViewContentModeScaleToFill
UIViewContentModeScaleAspectFill

如果您正在使用的图像大小与单元格上按钮的大小不匹配,则图像不会拉伸以填充整个按钮,而是图像图案只会重复自身直到按钮的整个区域使用。这是因为您设置的是“背景颜色”而不是实际的“背景图像”。与 'backgroundImage' 不同,'backgroundColor' 不遵守按钮的 UIContentMode。

因此,您需要做的是创建一个与按钮大小完全相同的图像。如果您的单元格具有动态高度(根据您的内容在运行时确定的高度),则无法执行此操作。

于 2016-05-26T06:08:24.050 回答