我正在尝试在具有自动布局的iPhone应用中使用GPUImageView。我试过像:
_imageView = [[GPUImageView alloc] init];
[self addSubview:_imageView];
[_imageView setTranslatesAutoresizingMaskIntoConstraints:NO];
_gpuImage = [[GPUImagePicture alloc] initWithImage:image];
[_gpuImage addTarget:_imageView];
[_gpuImage processImage];
构建和运行项目时,GPUImageView似乎不可见。
如果我删除所有自动布局约束并使用initWithFrame初始化_imageView,则清晰可见。所以,我想知道GPUImageView是否适用于自动布局?我是否需要做更多其他事情以使其可见?
更新:GPUImage是通过可可豆荚(~0.1.4)安装的。我不确定是否有任何我错过的项目的新更新。
答案 0 :(得分:1)
您可能看到的问题是UIImageView
有intrinsicContentSize
,但GPUImageView
没有。这意味着没有任何宽度/高度限制,UIImageView
将以正常大小显示图像,但GPUImageView
则不然(根据您的其他约束,它可能有0宽度/高度) 。
您可以在GPUImageView
上添加其他约束来约束其宽度和高度以匹配您期望的约束,或者您可以继承GPUImageView
并实现intrinsicContentSize
以返回您期望的任何内容成为。 (它通常不会实现这一点,因为通常它无法确定合理的大小;它会呈现给你视图的任何大小。)