私はそれにUIScrollView
のUIViewControllerを持っています。私は次のように私のアプリでの動作を持っていると思った:写真のときに、ユーザーの単一タップなぜios swiftアプリケーションでUIScrollViewのデフォルトズームを設定できないのですか?
1)利用者は、(UIScrollViewののデフォルトサイズ)
2)アプリを開き、通常のサイズで写真を見て、フルスクリーンになり、ユーザーはズームインして写真を移動することができます
3)ユーザーがフルスクリーンモードで再び写真をタップすると、ポイント1からズームして元のサイズに縮小し、動き回ることはできません。
私はこのプラグインと一緒に行くことにしました。スクロールして写真を動かすために:https://github.com/huynguyencong/ImageScrollView。
@IBOutlet weak var requestPhoto: ImageScrollView!
var originalPhotoSize :CGRect?
var isPhotoOnFullScreen: Bool = false
override func viewDidLoad() {
super.viewDidLoad()
let tapGestureRecognizer = UITapGestureRecognizer(target: self, action: "tapHandler:")
self.requestPhoto.addGestureRecognizer(tapGestureRecognizer)
self.requestPhoto.userInteractionEnabled = true
originalPhotoSize = requestPhoto.frame
}
override func viewDidAppear(animated: Bool) {
super.viewWillAppear(animated)
requestPhoto.scrollEnabled = false
requestPhoto.pinchGestureRecognizer?.enabled = false
requestPhoto.panGestureRecognizer.enabled = false
requestPhoto.zoomScale = 1
}
func tapHandler(sender: UITapGestureRecognizer) {
if sender.state == .Ended {
if(isPhotoOnFullScreen == true){
self.requestPhoto.frame = originalPhotoSize!
self.requestPhoto.zoomScale = 1
self.requestPhoto.pinchGestureRecognizer?.enabled = false
self.requestPhoto.scrollEnabled = false
isPhotoOnFullScreen = false
}else{
self.requestPhoto.frame = self.view.frame
self.requestPhoto.pinchGestureRecognizer?.enabled = true
self.requestPhoto.scrollEnabled = true
isPhotoOnFullScreen = true
}
}
}
そして、私の正確な問題は、次のとおりです:次のように
私のコードがある
1)ユーザーがアプリを開いたとき、彼は私が設定していても(小さな写真をズームするピンチすることができますrequestPhoto.pinchGestureRecognizer?.enabled = false
viewDidLoad
)
2)ユーザーが写真をタップすると、フルスクリーンで開きます。これは問題ありませんが、ズームしたり、ある時点で写真をタップすると小さなサイズに戻りますが、ズームレベルがデフォルトに設定されていません。
上記の2つの問題で私を助けてください?
==== EDIT
1 - ユーザーがアプリを開くと、ピンチで写真をズームすることができますが、フルスクリーンで画像を開いて通常モードに戻ると、ズームが無効になります。なぜそれは最初から無効になっていないのですか?
問題については、 2 - 何とかこの行self.requestPhoto.zoomScale = 1
は動作していません。self.requestPhoto.zoomScale
の値を1に設定した直後に表示されても、まだ別の値があります。このプラグイン(https://github.com/huynguyencong/ImageScrollView)の不具合か、間違っていますか?
ありがとうございます!しかし、今のところ私はサードパーティ製のsdkにとどまり、バグを修正しようとしましたが、それがうまくいかない場合、私はあなたのソリューションを使用しようとします!あなたはおそらく私の問題の理由かもしれないことを知っていますか? – randomuser1