Titik pertama ialah fungsi skrin kunci Anda boleh merujuk kepada: https://github.com/chniccs/Lo... Projek kecil ini ialah pelaksanaan fungsi skrin kunci, dengan jumlah yang kecil. kod.
Perkara lain ialah untuk melihat cara anda mentakrifkan setiap operasi Di sini, memaparkan aktiviti ke latar depan akan dianggap sebagai operasi Anda juga boleh menulis semula pendengar sentuh untuk mentakrifkan beberapa operasi sentuh sebagai operasi. 1. Tulis BaseActivity, hantar mesej tertunda (siaran atau pengendali lain) dalam onResume (ini digunakan di sini untuk mewakili operasi), dan rekod masa semasa (disimpan dalam Aplikasi tersuai atau singleton global atau Storan kegigihan ) 2. Mengikut kaedah sebelumnya menghantar mesej tertunda, seperti siaran, selepas menerima mesej siaran, bandingkan nilai masa semasa dengan nilai masa yang direkodkan dalam langkah 1, jika kurang daripada nilai masa yang ditetapkan , maka perbezaan antara dua nilai masa (disimpan dan semasa) diambil semula sebagai kelewatan dan kemudian siaran dihantar. Apabila siaran diterima kali seterusnya, ia akan dinilai semula Jika lebih besar daripada atau sama dengan nilai masa, skrin kunci akan dipanggil.
Penjelasan: Dalam langkah 2, mengapa anda perlu mengambil perbezaan dan bukannya menghantar semula siaran kelewatan tetap Ini kerana selepas menghantar siaran buat kali pertama, anda mungkin melakukan beberapa operasi, dan operasi ini akan diikuti kemudian. Maksudnya, apabila anda menerima siaran tertunda, masa operasi terakhir bukanlah masa yang direkodkan apabila siaran dihantar, tetapi masa operasi terakhir yang sebenar. Oleh itu, nilai masa yang direkodkan perlu dikemas kini selepas setiap operasi.
Pengiraan perbezaan: ditentukan masa maksimum tetap tanpa operasi - (masa semasa - masa operasi terakhir)
Titik pertama ialah fungsi skrin kunci Anda boleh merujuk kepada: https://github.com/chniccs/Lo...
Projek kecil ini ialah pelaksanaan fungsi skrin kunci, dengan jumlah yang kecil. kod.
Perkara lain ialah untuk melihat cara anda mentakrifkan setiap operasi Di sini, memaparkan aktiviti ke latar depan akan dianggap sebagai operasi Anda juga boleh menulis semula pendengar sentuh untuk mentakrifkan beberapa operasi sentuh sebagai operasi.
1. Tulis BaseActivity, hantar mesej tertunda (siaran atau pengendali lain) dalam onResume (ini digunakan di sini untuk mewakili operasi), dan rekod masa semasa (disimpan dalam Aplikasi tersuai atau singleton global atau Storan kegigihan )
2. Mengikut kaedah sebelumnya menghantar mesej tertunda, seperti siaran, selepas menerima mesej siaran, bandingkan nilai masa semasa dengan nilai masa yang direkodkan dalam langkah 1, jika kurang daripada nilai masa yang ditetapkan , maka perbezaan antara dua nilai masa (disimpan dan semasa) diambil semula sebagai kelewatan dan kemudian siaran dihantar. Apabila siaran diterima kali seterusnya, ia akan dinilai semula Jika lebih besar daripada atau sama dengan nilai masa, skrin kunci akan dipanggil.
Penjelasan: Dalam langkah 2, mengapa anda perlu mengambil perbezaan dan bukannya menghantar semula siaran kelewatan tetap Ini kerana selepas menghantar siaran buat kali pertama, anda mungkin melakukan beberapa operasi, dan operasi ini akan diikuti kemudian. Maksudnya, apabila anda menerima siaran tertunda, masa operasi terakhir bukanlah masa yang direkodkan apabila siaran dihantar, tetapi masa operasi terakhir yang sebenar. Oleh itu, nilai masa yang direkodkan perlu dikemas kini selepas setiap operasi.
Pengiraan perbezaan: ditentukan masa maksimum tetap tanpa operasi - (masa semasa - masa operasi terakhir)
Gunakan kaedah PostDelayed(Dapat dijalankan, panjang) Pengendali
1. Tentukan kelas Pengendali
2. Pemasa mula
3. Hentikan pemasa
Mungkin itu caranya, anda tentukan pada masa anda sendiri