Apakah ini bug UIKit?

Saya tidak yakin apakah bug ini benar-benar berasal dari aplikasi saya atau mungkin memang bug UIKit. Mungkin ada yang bisa menjelaskan hal ini di sini.

Ada tampilan tabel. Setiap sel menawarkan tombol pengungkapan ke layar seperti "pengaturan" yang merupakan tampilan modal. Tampilan modal dapat ditutup melalui tombol "Tutup".

Tampilan modal berisi UITextView.

Sekarang inilah bugnya: Pengguna memegang kunci yang menawarkan karakter serupa (misalnya: a -> ä á à ... ). Saat pengguna memegang kunci itu, karakter akan ditawarkan dan karakter pertama akan dipilih dengan warna biru. Jika pengguna menahan tombol ini dan secara bersamaan mengklik Tombol "Tutup". Tampilan modal menghilang dan tampilan tabel muncul. Keyboard hilang, namun menu {a á ä à} masih terlihat sekitar satu detik. Kemudian aplikasinya mogok.

Ini hanya dapat dilakukan di perangkat, karena Anda tidak dapat menekan dua tombol secara bersamaan.

Berikut adalah jejak tumpukan

Date/Time: 2009-12-01 17:39:31.048 +0100
OS Version: iPhone OS 3.0.1 (7A400)
Report Version: 104

Exception Type: EXC_BAD_ACCESS (SIGBUS)
Exception Codes: KERN_PROTECTION_FAILURE at 0x00000008
Crashed Thread: 0

Thread 0 Crashed:
0 libobjc.A.dylib 0x300102ac objc_msgSend + 16
1 UIKit 0x308ffda0 -[UIKeyboardImpl hasMarkedText] + 20
2 UIKit 0x309161b2 -[UIKeyboardImpl updateShiftState] + 230
3 UIKit 0x309224c0 -[UIKeyboardImpl handleObserverCallback] + 72
4 UIKit 0x30922466 observerCallback + 14
5 CoreFoundation 0x3020bf38 __CFRunLoopDoObservers + 420
6 CoreFoundation 0x30252e46 CFRunLoopRunSpecific + 1734
7 CoreFoundation 0x3025276a CFRunLoopRunInMode + 42
8 GraphicsServices 0x32044b08 GSEventRunModal + 108
9 GraphicsServices 0x32044bb4 GSEventRun + 56
10 UIKit 0x308f035c -[UIApplication _run] + 384
11 UIKit 0x308ef11a UIApplicationMain + 694
12 **** 0x00002360 main (main.m:14)
13 **** 0x000022fc start + 44

Thread 1:
0 libSystem.B.dylib 0x31d47624 semaphore_wait_signal_trap + 8
1 libSystem.B.dylib 0x31d702de semaphore_wait_signal + 2
2 libSystem.B.dylib 0x31d49c9c pthread_mutex_lock + 284
3 WebCore 0x35866fa6 __ZL17_WebTryThreadLockb + 98
4 WebCore 0x35866f22 __ZL14WebRunLoopLockP19__CFRunLoopObservermPv + 14
5 CoreFoundation 0x3020bf38 __CFRunLoopDoObservers + 420
6 CoreFoundation 0x30252db0 CFRunLoopRunSpecific + 1584
7 CoreFoundation 0x3025276a CFRunLoopRunInMode + 42
8 WebCore 0x35866ed2 __ZL12RunWebThreadPv + 286
9 libSystem.B.dylib 0x31d6a6ea _pthread_body + 10

person Tomen    schedule 01.12.2009    source sumber
comment
Sudahkah Anda mencobanya pada OS iPhone terbaru? Selain itu, tampilan tabel dengan sel dengan pengungkapan tidak boleh menggunakan pendekatan modal saat diketuk (saya berani bertaruh Apple akan menandai ini sebagai pelanggaran UI), melainkan menggunakan pengontrol navigasi untuk mendorong tampilan (detail) berikutnya ke tumpukan dari samping.   -  person Shaggy Frog    schedule 03.12.2009


Jawaban (2)


solusi untuk masalah ini adalah dengan mengundurkan diri dari first responder, yang saya lupa.

person Tomen    schedule 12.01.2010
comment
Saya juga mendapatkan kesalahan yang sama beberapa hari yang lalu. Tapi saya masih bertanya-tanya, apakah perlu mengundurkan diri dari menjadi responden pertama ketika katakanlah Anda menekan tampilan pada pengontrol navigasi. - person itsaboutcode; 21.06.2010
comment
menurutku kasusnya akan sama - person Tomen; 21.06.2010

Kedengarannya seperti bug bagi saya. Tapi kenapa tidak menggunakan OS versi terbaru? Ada banyak perbaikan bug antara 3.0.1 dan yang terbaru dan Anda akan membuang banyak waktu untuk masalah seperti ini yang mungkin telah diperbaiki.

person Steve Weller    schedule 03.12.2009