我创建一个UICollectionView并添加一个单独的单元格,其中唯一的子视图是UIButton.该按钮具有标题和图像集.我已经验证了调试器中的图像数据是否正确.
当在屏幕上绘制按钮时,我看到文本和图像,但是图像看起来好像已经填充了色调颜色,遮挡了除了其形状之外的所有图像.
我在这里错过了什么让这个显示为正常按钮应该?
事实证明,这不是特定于UICollectionView,而是iOS7中的所有UIButtons.
iOS 7使按钮中的所有图像都像模板图像一样使用图像的alpha通道与色调颜色一起生成图像(非常类似于标签栏中的图像).在UIImage上有一个新的renderingMode属性,默认为"自动",允许上下文决定(这是按钮的模板样式)
这可以使用UIImage上的新imageWithRenderingMode:方法来规避:
UIImage* myImage = [UIImage imageNamed:@"Foo.png"];
myImage = [myImage imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
[button setImage:myImage forState:UIControlStateNormal];
Run Code Online (Sandbox Code Playgroud) 我有一个UIView,我用作UITableView的页脚.在这个UIView中是一个UIWebView和UICollectionView.它们的布局如下:
H:|[webview]|
H:|[collection]|
V:|[webview]-8-[collection(10@1)]|
Run Code Online (Sandbox Code Playgroud)
这是通过IB完成的,但这表明存在约束.
我希望webview的大小与它的内容(我有那个工作)和集合大小适合它的内容.我希望整个UIView包含它们的大小以适应所有这些而不滚动,因为它包含在处理它自己的滚动的tableview中.
我似乎无法使集合的大小大于约束所具有的10个点.此外,约束系统要求某物具有高度.
我如何达到我的目标,视图大小适合两个子视图,这些子视图的大小又适合其内容?我已经尝试在sizeToFit方法中为整个视图调整collectionview上的帧,但我相信约束系统正在撤消它.