Saya mengalami masalah saat menampilkan pengontrol pangkas di atas pengontrol Navigasi.
Saat menutup pengontrol pangkas, di akhir transisi, tampilan pengontrol navigasi dihapus dan tidak ditampilkan... (terjadi di iPhone dan iPad dan hanya di iOS 13).
belum lagi navigasinya masih ada dan UI "macet".
@uchiaTziki Um. Anda mungkin harus menunjukkannya kepada saya, maaf! Bisakah Anda melampirkan tangkapan layar?
screenshot terlampir...
Harapan itu membuat segalanya lebih jelas..
Hmm, jadi Anda mempresentasikannya di dalam pengontrol tampilan lain yang disajikan?
Saya ingin tahu apakah kode pemberhentian ini akhirnya mengabaikan pengontrol tampilan yang salah, lalu:
Bisakah Anda mencoba mengubah kode di sana dan melihat apakah Anda dapat menemukan kombinasi yang memperbaikinya?
Tanpa bisa mengujinya sendiri, tidak ada yang bisa saya lakukan dari pihak saya. Maaf!
Saya mencoba hampir semua hal, tetapi saya akan mencoba lagi..
Pengontrol di belakang tidak diberhentikan .. tampilannya dihapus (yang aneh).
Apakah Anda mencoba kode ini sebelum menampilkan cropViewController?
if #available(iOS 13.0, *) {
cropViewController.modalPresentationStyle = .fullScreen
}
Dicoba tadi pagi. Itu memecahkan bug tetapi animasi adalah animasi modal default (dari bawah ke atas).
Animasi khusus dari tampilan/bingkai tidak berfungsi dengan solusi ini
@uchiaTziki apakah Anda menemukan perbaikan?
Apakah ini dapat direproduksi dalam aplikasi sampel sama sekali? Jika demikian, saya berpotensi dapat melihatnya.
Cara kerja presentasi modal di iOS 13 berubah dari versi iOS sebelumnya. Tetapi saya belum memiliki kesempatan yang baik untuk mengetahui dengan tepat apa yang perlu kita lakukan untuk memperbarui kode untuk itu.
Sejauh yang saya bisa lihat, itu tidak berfungsi dengan baik ketika Anda memiliki yang berikut:
Maaf saya sedang liburan.
Apakah Anda mencoba kode ini sebelum menampilkan cropViewController?
if #available(iOS 13.0, *) { cropViewController.modalPresentationStyle = .fullScreen }
Menggunakan itu ( @TimOliver ) di Xcode beta terbaru berhasil. Jadi animasi transisi bekerja untuk saya sekarang.
Ini bekerja untuk saya juga.
func cropViewController(_ cropViewController: CropViewController, didFinishCancelled cancelled: Bool) {
//This code fails on iOS13.
//cropViewController.dismiss(animated: true)
let viewController = cropViewController.children.first!
viewController.modalTransitionStyle = .coverVertical
viewController.presentingViewController?.dismiss(animated: true, completion: nil)
}
Metode ini berfungsi dengan baik di iOS 13.
Saya tidak tahu mengapa.
Saya berharap Anda menemukan cara yang lebih baik.
Hai, saya menemukan bug di iOS 13.1
jika saya menggunakan
dismiss(animated: true, completion: nil)
di iOS 13.1,
Semua ViewController menghilang.
Saya tidak tahu mengapa.
Saya hanya perlu mengatur cropViewController.modalTransitionStyle = .coverVertical
sebagai solusi karena kemudian tidak menggunakan transisi khusus lagi ...
Hal yang sama seperti @oblq di sini.
Apakah Anda mencoba kode ini sebelum menampilkan cropViewController?
if #available(iOS 13.0, *) { cropViewController.modalPresentationStyle = .fullScreen }
Memperbaiki masalah saya, terima kasih
jika #tersedia(iOS 13.0, *) {
cropViewController.modalPresentationStyle = .fullScreen
}
Terima kasih. Ini memperbaiki masalah saya di iOS 13
setelah memotong gambar , mengabaikan pengontrol pemangkasan, pada akhir transisi, tampilan pengontrol navigasi dihapus dan tidak ditampilkan
tolong bantu saya
setelah memotong gambar , mengabaikan pengontrol pemangkasan, pada akhir transisi, tampilan pengontrol navigasi dihapus dan tidak ditampilkan
tolong bantu saya
Hai! Cukup setel cropViewController.dismiss(animated: **false**, completion: nil)
alih-alih cropViewController.dismiss(animated: **true**, completion: nil)
Saya juga mencoba menyelesaikan masalah ini. Seperti yang dikatakan @ibdman1991 , menonaktifkan animasi berfungsi tetapi terlihat buruk. Saya pikir menghapus transitioningDelegate
bisa menjadi solusi yang lebih baik, tidak yakin seberapa besar dampaknya.
let cropViewController = CropViewController(image: image)
cropViewController.modalTransitionStyle = .crossDissolve
cropViewController.transitioningDelegate = nil
jika #tersedia(iOS 13.0, *) {
cropViewController.modalPresentationStyle = .fullScreen
}
Masalah ini diselesaikan di iOS 13 dan di atasnya Terima kasih
jika #tersedia(iOS 13.0, *) {
cropViewController.modalPresentationStyle = .fullScreen
// cropViewController.modalTransitionStyle = .crossDissolve
cropViewController.transitioningDelegate = nihil
}
Bekerja untuk saya
Uhh. Oke. Karena secara eksplisit mengatur gaya presentasi ke layar penuh tampaknya memperbaikinya untuk sebagian besar orang, saya menutup ini. :)
Jika Anda memiliki kasus penggunaan khusus yang memerlukan gaya presentasi modal yang berbeda secara eksplisit, silakan buka edisi baru dan jelaskan dengan sangat hati-hati apa yang Anda coba lakukan. Harap diingat, jika ini adalah bug di iOS 13, mungkin tidak banyak yang bisa kami lakukan di sini.
Terima kasih!
Komentar yang paling membantu
Metode ini berfungsi dengan baik di iOS 13.
Saya tidak tahu mengapa.
Saya berharap Anda menemukan cara yang lebih baik.
https://www.dropbox.com/s/wyzc8errinfap1f/TestCrop.zip?dl=0