Advertisement
  1. Code
  2. iOS 10

Haptic Feedback Dalam iOS 10

Scroll to top
Read Time: 4 min

() translation by (you can also view the original English article)

Haptic Feedback menambahkan sebuah dimensi yang benar-benar baru pada interaksi pengguna mobile. Pelajari bagaimana cara menggunakan Haptic Feedback API iPhone 7 terbaru untuk menyediakan kepada pengguna sebuah respon fisik.

Apakah Haptic Feedback Itu?

dalam iOS 10 kita memiliki sebuah API baru untuk menyediakan feedback pada pengguna. Haptic Feedback adalah sebuah ekstensi feedback visual dimana setiap pengguna telah terbiasa. Jika kamu memiliki sebuah iPhone 7 atau iPhone 7 Plus, kamu mungkin menyadari sebuah getaran kecil dari perangkat saat melakukan scrolling sebuah pemilih tanggal atau ketika mengganti nilai sebuah saklar—itu adalah Haptic Feedback. Class UIFeedbackGenerator yang baru dapat digunakan untuk menerapkan perilaku yang sama dalam aplikasimu.

Kapan Menggunakannya

Aturan pertama Haptic Feedback dari Panduan Perangkat Manusia iOS: Jangan menggunakannya secara berlebihan! Kamu tidak seharusnya mengirimkan feedback tidak berguna pada penggunamu. Jika kamu melakukannya, mereka mungkin memutuskan untuk mematikan fitur ini untuk keseluruhan perangkat mereka. Karena itu dapat dinonaktifkan, jangan menggunakan Haptic Feedback sebagai metode satu-satunya feedback dengan penggunamu. Itu mungkin tidak tersedia pada beberapa perangkat, dan permintaan akan diabaikan secara diam-diam dalam perangkat lama yang tidak mendukungnya.

Secara umum, Haptic Feedback harusnya menjadi sebuah respon untuk sebuah aksi yang dimulai oleh pengguna. Dengan cara ini, itu lebih mudah bagi pengguna untuk mengkorelasikan feedback dengan sumbernya.

Terakhir, jika kamu ingin memainkan sebuah suara pada saat yang sama, kamu harus berhati-hati untuk mensinkronisasikannya.

Bagaimana Memilih Feedback Yang Benar

Dokumen Apa Yang Terbaru Dalam iOS 10 milik Apple menjelaskan satu dari tiga kelas konkrit ini harus digunakan:

  • UIImpactFeedbackGenerator menyediakan sebuah metafora fisik yang melengkapi pengalaman visual. Misalnya, pengguna mungkin merasakan sebuah ketukan ketika sebuah tampilan berpindah tempat atau dua obyek bertabrakan. Itu memiliki tiga variasi: success, warning, dan failure.
  • UINotificationFeedbackGenerator mengindikasikan bahwa sebuah tugas atau aksi, seperti mendepositkan sebuah cek atau membuka sebuah kendaraan, memiliki sebuah peringatan selesai, atau gagal. Itu memiliki tiga variasi: light, medium, dan heavy.
  • UISelectionFeedbackGenerator mengindikasikan bahwa seleksi secara aktif berubah. Misalnya, pengguna merasa ketukan ringan ketika melakukan scrolling roda pemilih. Feedback ini ditujukan untuk mengkomunikasikan gerakan melalui serangkaian nilai terpisah, bukan membuat atau mengkonfirmasi sebuah seleksi.

Untuk menjelaskan jenis yang berbeda ini, dokumentasi memiliki video dengan suara untuk mengilustrasikan pola tiap jenis feedback. Cobalah sendiri pada situs Apple Developer.

Simulation of a type of haptic feedbackSimulation of a type of haptic feedbackSimulation of a type of haptic feedback

Bagaimana Melakukan Feedback

Sekarang mari mulai melakukan coding! Kita akan membangun sebuah aplikasi iOS yang sangat sederhana yang memberikan sebuah feedback sukses ketika sebuah tombol ditekan. Buka Xcode 8 dan buat sebuah project iOS baru.

Tambahkan sebuah tombol dalam file Storyboard dan buat sebuah IBAction untuk memicu feedback.

Trigger notification success messageTrigger notification success messageTrigger notification success message

Sebuah siklus hidup generator feedback tampak seperti ini:

  1. Memberi contoh pada generator.
  2. Menyiapkan generator (opsional).
  3. Memicu feedback.
  4. Melepaskan generator (opsional).

Saya akan membawamu melewati tiap tahapan ini di bawah.

Memberi Contoh Pada Generator

Pertama-tama, nyatakan variabel baru jenis UINotificationFeedbackGenerator. Jika kamu ingin menggunakan jenis feedback lainnya, cukup ganti class ini.

1
var feedbackGenerator: UINotificationFeedbackGenerator?    // Declare the generator type.

Inisialisasi generator dalam viewDidLoad:

1
override func viewDidLoad() {
2
    super.viewDidLoad()
3
    feedbackGenerator = UINotificationFeedbackGenerator()  // Instantiate the generator.

4
}

Menyiapkan Generator

Jika kamu tahu lebih awal bahwa pengguna akan memicu sebuah feedback, kamu harusnya memanggil metode prepare(). Ini akan memicu waktu respon antara panggilan metodemu dan feedback hardware aktual. Sebuah contoh adalah ketika kamu ingin memberikan berbagai feedback selama gerakan tangan. Dalam kasus ini, pertama-tama persiapkan generator sehingga waktu respons dikurangi.

Memicu Feedback

Dalam contoh yang sedang kita bangun, kita tidak memiliki cara untuk mengetahui kapan pengguna akan menekan tombol. Untuk alasan ini, di dalam tindakan kita langsung memicu feedback.

1
@IBAction func triggerNotification(_ sender: UIButton) {
2
    feedbackGenerator?.notificationOccurred(.success)      // Trigger the haptic feedback.

3
}

Melepaskan Generator

Kita telah menyatakan generator sebagai opsional sehingga, dalam hal kita tidak membutuhkannya, kita dapat mengaturnya sebuah nil untuk melepas semua sumbernya. Ini adalah langkah opsional.

Saat ini tidak ada cara untuk menguji Haptic Feedback dalam Simulator. Kamu harus mendapatkan sebuah iPhone 7 dan menguji alur aplikasi dengan sistem feedback terbaru. Jalankan aplikasi pada iPhone 7 dan tekan tombol pada layar. Kamu harusnya merasakan sebuah feedback yang berhasil!

Ketika menambahkan dukungan feedback ke aplikasimu, pastikan itu terasa benar dalam konteks bahwa penggunamu akan mengharapkannya, jika tidak mereka akan kebingungan.

Kesimpulan

Haptic Feedback merupakan sbh fitur yang bagus untuk membuat aplikasi terasa lebih nyata. Pengguna selalu mengapresiasi melihat aplikasi mendukung fitur terbaru dalam perangkat mereka, jadi lanjutkan dan segera terapkan itu.

Sementara itu, periksa beberapa course dan tutorial kami lainnya tentang pengembangan aplikasi Swift dan fitur baru dalam iOS 10.

Advertisement
Did you find this post useful?
Want a weekly email summary?
Subscribe below and we’ll send you a weekly email summary of all new Code tutorials. Never miss out on learning about the next big thing.
Advertisement
Looking for something to help kick start your next project?
Envato Market has a range of items for sale to help get you started.