我有一個小問題,我無法弄清爲什麼會發生這種情況。更改UIView的框架無法正常工作
我有一個自定義的NavigationView。我的要求是在谷歌地圖上點擊時更改此NavigationView的框架。我的意思是我必須用動畫顯示和隱藏(切換)框架。
下面是我的代碼: -
func mapView(_ mapView: GMSMapView, didTapAt coordinate: CLLocationCoordinate2D) {
if false == boolTapOnNavigationView {
UIView.animate(withDuration: 0.5, animations: {
self.viewNavigation.frame = CGRect(x: 0, y: -100, width: self.view.frame.width, height: 60)
//self.viewNavigation.isHidden = true
})
boolTapOnNavigationView = true
}
else {
UIView.animate(withDuration: 0.5, animations: {
//self.viewNavigation.isHidden = false
self.viewNavigation.frame = CGRect(x: 0, y: 20, width: self.view.frame.width, height: 60)
})
boolTapOnNavigationView = false
}
}
在我的代碼,你可以看到我有一個叫做「boolTapOnNavigationView」標誌。
這段代碼工作正常,如果我將點擊谷歌地圖,但是當我點擊同一ViewController中的任何其他按鈕時,那個NavigationView的框架會自動反射。
它不是明確什麼是你的問題實際上!你是否已經將委託添加到視圖控制器'mapView.delegate = self'?或者你可以說,你在哪裏面臨複雜性? –
是的mapView.delegate =自己添加。 我的問題是我有一個自定義的導航視圖上的谷歌地圖。 我想改變框架,同時點擊谷歌地圖。 謝謝 – kishor0011
只需嘗試更改mapview fram,並檢查問題是否存在? – user3575114