[英]UIImageview not showing after being added to another subview which is UIScrollview
[英]View is flipped when being added as subview of UIImageView
我正在通過drawRect
在UIView
上繪制一個三角形,然后將該UIView
添加為主視圖( UIView
)的子視圖。
非常簡單,它顯示。
當我使用UIImageView
時,會發生問題。
UIView
(主視圖)將UIImageView
添加為子視圖,並通過此UIImageView
將UIView
添加為子視圖,在該子視圖上繪制了三角形。
層次:
[UIView] (main view; i.e. self.view)
|
[UIImageView]
|
[UIView] (onto which drawing is)
查看作品:
self.view = [[UIView alloc] initWithFrame:(CGRect){{0.0, 0.0}, 320.0, 480.0}];
imageView = [[UIImageView alloc] initWithImage:...];
[self.view addSubview:imageView];
viewWithTriangle = [[MyView alloc] initWithFrame:imageView.bounds];
[imageView addSubview:viewWithTriangle];
三角形垂直翻轉。 最簡單的解決方法是再次垂直翻轉UIView
,但是我想知道為什么將UIView
添加為UIImageView
子視圖會導致此翻轉。
如果我將圖形直接添加為主視圖的子視圖,則不會發生這種情況。
UIImage的方向有時可能會滲入UIImageView的坐標系中。 UIImageView經過高度優化,可以將UIImage繪制到屏幕上。 UIImageView甚至不調用drawRect
,例如
使用斷點,當您看到此行為時,請檢查imageView.image.imageOrientation
的值。 它等於UIImageOrientationUp
以外的其他UIImageOrientationUp
嗎? 如果是這樣,您可能需要處理以下事實:UIImageView將某些屬性“轉換”為UIImage的“人類首選”坐標系,而不是圖像數據的實際編碼系統。
我沒有親自測試此代碼或方法,因為我沒有在UIImageView上添加子視圖,但這可能是一個問題。 請讓我們知道這是否有助於診斷-我很好奇!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.