我在故事板中创建了一个以景观为导向的VC
我在其中添加了一个UIIScrollView
,比如说,使其:(w)1000500(h)在VC中。
我想做的是:
1)在ScrollView
内滚动图像(高分辨率,如1334 x 750)
2)以横向模式在ScrollView
中查看图像
要使ScrollView显示图像,我必须在viewdideappear中执行`
但问题是:
1)“ScrollView”的宽度和高度已消失
2)顶部的标签不见了。
3)“ScrollView”大小变小,大约为200 x 150,从上角开始,大约为(0,0)
我需要做什么才能使“scrollview”的大小在1000 x 500之前?
---更新--
类ViewController:UIViewController、UIScrollViewDelegate{
@IBOutlet弱变量myUIScrollView:UIScrollView!
变量imgView:UIImageView!
重写func viewDidLoad(){
超级视图加载()
//--强制横向模式:
let value=UIInterfaceOrientation.LandscapeLeft.rawValue
UIDevice.currentDevice().setValue(值,forKey:“方向”)
Self.MyISCLVIEWVIE.MULTIUMZOMPLANSIZE=10
self.myUIScrollView.minimumzoomcale=1.0
self.myUIScrollView.delegate=自己
imgView=UIImageView(图片:UIImage(名称:“MyPhoto.png”))
}
覆盖func viewdideappear(动画:Bool){
self.myUIScrollView.contentSize=imgView.bounds.size
self.myUIScrollView.addSubview(imgView)
view.addSubview(myUIScollView)
}
重写func shouldautrotate()->Bool{
返回真值
}
func viewForZoomingInScrollView(滚动视图:UIScrollView)->UIView?{
返回imgView
}
最佳答案
试试这个:
导入UIKit
类ViewController:UIViewController、UIScrollViewDelegate{
var image: UIImage!{
get{
return myImageView.image!
}set{
myImageView.image = newValue
myImageView.sizeToFit()
myScrollView.contentSize = myImageView.frame.size
}
}
var myImageView = UIImageView()
@IBOutlet weak var myScrollView: UIScrollView!{
didSet{
myScrollView.delegate = self
myScrollView.minimumZoomScale = 10.0
myScrollView.maximumZoomScale = 1.0
myScrollView.addSubview(myImageView)
}
}
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
image = UIImage(named: "one")
}
func viewForZooming(in scrollView: UIScrollView) -> UIView? {
return myImageView
}
}
关于ios - UIScrollView无法以纵向或横向模式显示图像,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30617169/