Jika tidak ada solusi lain yang berfungsi untuk Anda, periksa kembali apakah tampilan gulir Anda sebenarnya adalah a UIScrollView
di Interface Builder.
Pada beberapa titik dalam beberapa hari terakhir, UIScrollView
tipe spontan saya berubah menjadi a UIView
, meskipun kelasnya mengatakan UIScrollView
di inspektur. Saya menggunakan Xcode 5.1 (5B130a)
.
Anda dapat membuat tampilan gulir baru dan menyalin pengukuran, pengaturan, dan batasan dari tampilan lama, atau Anda dapat secara manual mengubah tampilan Anda ke UIScrollView
dalam xib
file. Saya melakukan perbandingan dan menemukan perbedaan berikut:
Asli:
<scrollView clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="scaleToFill" directionalLockEnabled="YES" bounces="NO" pagingEnabled="YES" showsHorizontalScrollIndicator="NO" showsVerticalScrollIndicator="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Wsk-WB-LMH">
...
</scrollView>
Setelah jenis berubah secara spontan:
<view clearsContextBeforeDrawing="NO" contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" customClass="UIScrollView" id="qRn-TP-cXd">
...
</view>
Jadi saya mengganti <view>
garis dengan <scrollView>
garis asli saya .
Saya juga mengganti tag penutup tampilan </view>
dengan </scrollView>
.
Pastikan id tetap sama dengan tampilan saat ini, dalam hal ini: id = "qRn-TP-cXd".
Saya juga harus menyiram xib dari cache Xcode dengan menghapus data turunan aplikasi:
Xcode->Window->Organizer->Projects
, pilih proyek Anda, pada baris Data Turunan, klik Hapus ...
Atau jika menggunakan perangkat:
Xcode->Window->Organizer->Device
, pilih perangkat Anda-> Aplikasi, pilih aplikasi Anda, klik (-)
Sekarang bersihkan proyek, dan hapus aplikasi dari simulator / perangkat:
Xcode->Product->Clean
- iOS
Simulator/device->press
dan tahan app->click
tombol (X) untuk menghapusnya
Anda kemudian dapat membangun dan menjalankan aplikasi Anda dan memiliki fungsi gulir lagi.
PS Saya tidak perlu mengatur ukuran konten tampilan gulir viewDidLayoutSubviews
atau mematikan tata letak otomatis, tetapi YMMV.