3D Touch: apa itu, teknologi Force Touch dan Haptic Touch

Penulis: IT Sectr Diterbitkan: 2026-02-28 Waktu membaca: 10 mnt

3D Touch — teknologi perangkat keras Apple yang mengenali kekuatan tekanan pada layar iPhone, dan pengganti perangkat lunaknya Haptic Touch, yang bekerja berdasarkan durasi sentuhan. 3D Touch menggunakan sensor tekanan terkalibrasi yang dipasang di bawah matriks layar (Force Touch) dan memungkinkan membedakan tekanan ringan (peek) dan tekanan dalam (pop). Mulai iOS 13, Apple mengganti 3D Touch dengan Haptic Touch — teknologi yang mensimulasikan tekanan kuat melalui Long Press dengan umpan balik haptik UIContextMenuInteraction.

Poin Utama

  • Kekuatan tekanan — 3D Touch mengukur tekanan dalam gram; Haptic Touch menggunakan waktu penahanan
  • Peek and Pop — pola UX asli 3D Touch: tekanan ringan (peek) untuk pratinjau, dalam (pop) untuk membuka
  • UIContextMenuInteraction — API iOS modern untuk menu konteks yang bekerja dengan Haptic Touch
  • Force Touch — teknologi Apple yang mengukur tekanan melalui sensor kapasitif di layar
  • UIForceTouchCapability — metode iOS untuk memeriksa ketersediaan 3D Touch pada perangkat

Apa itu 3D Touch dan Haptic Touch?

3D Touch — teknologi input perangkat keras yang memulai debutnya di iPhone 6S (2015). Di bawah permukaan layar terdapat sensor kapasitif yang mengukur jarak antara kaca dan lampu latar. Saat ditekan dengan jari, kaca melentur secara mikron, sensor mencatat besarnya deformasi dan mengubahnya menjadi nilai gaya (gram). iOS membedakan tiga level: sentuhan ringan (touch), tekanan sedang (peek, ~200 g) dan tekanan dalam (pop, ~400 g).

Haptic Touch — pengganti perangkat lunak untuk 3D Touch, diperkenalkan di iOS 13 (2019). Alih-alih mengukur tekanan, Haptic Touch menggunakan Long Press (menahan jari ~500 ms) untuk mengaktifkan tindakan yang sama. Umpan balik haptik (haptic feedback) mensimulasikan sensasi "klik", meskipun tidak ada tekanan fisik yang terjadi. Apple beralih ke Haptic Touch karena kompleksitas dan biaya produksi layar 3D Touch yang tinggi, terutama saat beralih ke panel OLED dengan Face ID.

Latar belakang sejarah: 3D Touch muncul di iPhone 6S dan dipertahankan hingga iPhone XS (2018). iPhone XR (2018) menjadi perangkat pertama dengan Haptic Touch alih-alih 3D Touch. Mulai iPhone 11 (2019) dan iOS 13, semua iPhone baru menggunakan Haptic Touch. iPad tidak pernah mendapatkan 3D Touch — hanya Haptic Touch sejak iPadOS 13. Apple Watch menggunakan teknologi Force Touch di layar (berbeda dari iPhone 3D Touch), yang dihapus mulai watchOS 7 dan Series 6.

Teknologi Force Touch: bagaimana tekanan diukur

Force Touch — teknologi pengukuran kekuatan tekanan yang digunakan Apple di iPhone 6S–XS (3D Touch), trackpad MacBook (2015+) dan Apple Watch (Series 1–5). Di dasarnya terdapat sensor kapasitif yang ditempatkan di sekeliling layar. Saat ditekan, kaca berdeformasi mikron, sensor mencatat perubahan jarak dan menghitung gaya sesuai kurva kalibrasi. Sistem memperhitungkan suhu lingkungan (kalibrasi setiap 24 jam) dan posisi jari (bagian tengah layar lebih sensitif).

Kalibrasi — aspek kritis dari 3D Touch. Setiap iPhone dikalibrasi secara individual di pabrik. iOS juga melakukan kalibrasi dinamis: pada tekanan pertama setelah boot, sistem meminta kekuatan maksimum pengguna dan menyesuaikan sensitivitas. Sensor memiliki akurasi ±10 gram, rentang — dari 0 hingga 500+ gram. Pengembang bisa mendapatkan nilai force melalui UITouch.force (dinormalisasi dari 0.0 hingga maksimum) atau UITouch.maximumPossibleForce.

swift
// Memeriksa ketersediaan 3D Touch dan membaca kekuatan tekanan
class ForceTouchViewController: UIViewController {

    override func touchesMoved(_ touches: Set<UITouch>,
                                with event: UIEvent?) {
        guard let touch = touches.first else { return }

        // Memeriksa dukungan Force Touch pada perangkat
        guard self.traitCollection.forceTouchCapability
                == UIForceTouchCapability.available else {
            // Perangkat tidak mendukung 3D Touch
            return
        }

        // Membaca kekuatan tekanan (0.0 — maks)
        let force = touch.force      // 0.0 ... maximumPossibleForce
        let maxForce = touch.maximumPossibleForce

        // Normalisasi ke rentang 0.0–1.0 untuk visualisasi
        let normalizedForce = force / maxForce

        // Reaksi visual terhadap kekuatan tekanan (skala elemen)
        forceView.transform = CGAffineTransform(scaleX: 1.0 + normalizedForce * 0.3,
                                                y: 1.0 + normalizedForce * 0.3)
    }
}

Keterbatasan: 3D Touch hanya bekerja dengan sentuhan aktif (UITouch.phase == .began atau .moved). Setelah dilepaskan, nilai force direset. Nilai force maksimum bervariasi antar perangkat: iPhone 6S — 6.6666, iPhone 7/X — hingga 20.0 (karena kalibrasi berbeda). Jangan gunakan force untuk tindakan kritis — pengguna mungkin tidak tahu seberapa kuat harus menekan. Selalu berikan alternatif melalui Haptic Touch (Long Press).

Peek and Pop: pola UX tekanan kuat

Peek and Pop — pola UX asli Apple, diperkenalkan dengan 3D Touch di iPhone 6S. Peek — tekanan ringan (force ~0.5–1.0) yang menampilkan pratinjau konten (email, tautan, foto) dalam bentuk kartu pratinjau. Pop — tekanan lebih dalam (force ~2.0+) yang membuka konten di layar penuh. Peek mendukung tindakan di bagian bawah (share, copy, reply), yang dapat diakses dengan menggeser ke atas pada kartu pratinjau.

Implementasi Peek and Pop di UIKit mencakup tiga komponen: UIViewControllerPreviewingDelegate (protokol dengan metode previewingContext(_:viewControllerForLocation:) dan previewingContext(_:commit:)), UIPreviewAction (tindakan di bagian bawah) dan pendaftaran melalui registerForPreviewing(with:sourceView:). Pengembang menentukan ViewController mana yang akan ditampilkan saat Peek dan bagaimana membukanya saat Pop. Sistem secara otomatis menambahkan animasi paralaks dan pengaburan latar belakang.

GerakanGaya (norm.)TindakanEfek visual
Sentuhan (Touch)0.0–0.3Interaksi biasaPenyorotan elemen
Tekanan ringan (Peek)0.5–1.0Pratinjau kontenKartu dengan blur latar
Tekanan dalam (Pop)2.0+Buka di layar penuhAnimasi pembukaan kartu
Geser ke atasTindakan (share, copy)Grup UIPreviewAction

Transisi ke UIContextMenuInteraction (iOS 13): Apple mengganti Peek and Pop dengan menu konteks melalui UIContextMenuInteraction. API baru lebih sederhana: tidak memerlukan UIViewControllerPreviewingDelegate, mendukung menu hierarkis (submenu), ikon SF Symbols, dan bekerja sama dengan 3D Touch dan Haptic Touch. Migrasi: registerForPreviewing tidak digunakan lagi sejak iOS 13. Ganti dengan UIContextMenuConfiguration, yang secara otomatis menyesuaikan dengan kemampuan perangkat.

Menu konteks: UIContextMenuInteraction

UIContextMenuInteraction — API iOS modern untuk menu konteks, tersedia sejak iOS 13. Ditambahkan ke UIView mana pun melalui addInteraction(_:). Delegasi UIContextMenuInteractionDelegate menyediakan konfigurasi menu: UIContextMenuConfiguration dengan pengidentifikasi, previewProvider (opsional, untuk pratinjau) dan actionProvider (array UIAction atau UIMenu). Menu konteks diaktifkan melalui 3D Touch (jika tersedia) atau Haptic Touch (Long Press pada perangkat lainnya).

swift
// UIContextMenuInteraction dengan menu hierarkis
class ContextMenuViewController: UIViewController,
                                   UIContextMenuInteractionDelegate {

    override func viewDidLoad() {
        super.viewDidLoad()
        let interaction = UIContextMenuInteraction(delegate: self)
        contextMenuView.addInteraction(interaction)
    }

    func contextMenuInteraction(_ interaction: UIContextMenuInteraction,
        configurationForMenuAtLocation location: CGPoint) -> UIContextMenuConfiguration? {

        return UIContextMenuConfiguration(identifier: nil,
            previewProvider: { PreviewViewController() }) { _ in

            let share = UIAction(title: "Bagikan",
                              image: UIImage(systemName: "square.and.arrow.up"),
                              handler: { _ in self.shareContent() })

            let edit = UIAction(title: "Edit",
                            image: UIImage(systemName: "pencil"),
                            handler: { _ in self.editContent() })

            let delete = UIAction(title: "Hapus",
                            image: UIImage(systemName: "trash"),
                            attributes: .destructive,
                            handler: { _ in self.deleteContent() })

            return UIMenu(title: "Tindakan", children: [share, edit, delete])
        }
    }
}

UIContextMenuConfiguration mendukung previewProvider — pengontrol yang ditampilkan sebagai pratinjau. Jika previewProvider nil, menu konteks ditampilkan tanpa pratinjau. Untuk menyesuaikan ukuran dan tampilan pratinjau, digunakan UIContextMenuContentPreviewProvider. Menu konteks secara otomatis mendapatkan umpan balik haptik (Haptic Touch Engine) dan animasi kemunculan (scale + fade).

Haptic Touch vs 3D Touch: perbandingan

Haptic Touch dan 3D Touch — teknologi berbeda yang menuju ke hasil yang sama. 3D Touch adalah perangkat keras (sensor tekanan di layar), Haptic Touch adalah perangkat lunak (Long Press + Taptic Engine untuk simulasi haptik). 3D Touch memerlukan biaya produksi (lapisan sensor tambahan), meningkatkan ketebalan layar dan kompleksitas perbaikan. Haptic Touch lebih murah, lebih sederhana dalam produksi dan tersedia di semua perangkat modern (iPhone SE 2020, iPhone 11–16, iPad, iPod touch).

Parameter3D TouchHaptic Touch
PrinsipPengukuran tekanan (gram)Pengukuran waktu (milidetik)
KetersediaaniPhone 6S–XS (terbatas)iPhone XR+, iPad, iPod touch
KecepatanSeketika (~100 ms)Dengan penundaan (~500 ms)
Tingkat tekanan2 (peek + pop)1 (menu konteks)
Umpan balik haptikTaptic Engine (simulasi klik)Taptic Engine (simulasi klik)
App StoreQuick Actions pada ikonQuick Actions pada ikon
KalibrasiKalibrasi otomatis ke kekuatan penggunaTidak diperlukan
Kemudahan perbaikanKompleks (sensor di layar)Standar

Dampak pada UX: kecepatan 3D Touch lebih tinggi — pengguna mendapatkan menu konteks segera saat menekan kuat. Haptic Touch memerlukan jeda 500 ms, yang terasa lebih lambat. Namun Apple mengompensasinya dengan umpan balik haptik dan animasi visual. Pengguna yang beralih dari 3D Touch ke Haptic Touch sering mencatat perbedaan kecepatan. Bagi pengembang, migrasi bersifat transparan: UIContextMenuInteraction bekerja sama pada kedua teknologi.

Di mana tekanan kuat diterapkan

Quick Actions — menu konteks pada ikon aplikasi di layar beranda. Tekanan kuat (3D Touch) atau Long Press (Haptic Touch) pada ikon menampilkan hingga 4 tindakan cepat: "Pesan Baru" (Messages), "Ambil Foto" (Camera), "Cari" (Safari). Diimplementasikan melalui kunci Info.plist UIApplicationShortcutItems atau melalui delegasi UIApplicationShortcutItem. Quick Actions tersedia di semua perangkat dengan iOS 13+ (Haptic Touch) atau 3D Touch.

Keyboard-trackpad — tekanan kuat pada keyboard iOS mengalihkannya ke mode trackpad: tombol menjadi tidak aktif dan gerakan jari memindahkan kursor. 3D Touch mengaktifkan trackpad dengan tekanan kuat di mana saja pada keyboard. Haptic Touch mengaktifkan trackpad dengan tekanan panjang pada bilah spasi (spacebar). Mode trackpad telah menjadi salah satu aplikasi 3D Touch yang paling populer — pengguna menghargai penentuan posisi kursor yang tepat saat mengedit teks.

Pratinjau tautan dan foto — tekanan kuat pada tautan di Safari menampilkan pratinjau halaman (peek) tanpa navigasi. Serupa: tekanan pada foto di Messages membuka versi yang diperbesar. Menggeser ke atas dalam mode peek menampilkan tindakan: "Buka", "Tambahkan ke daftar bacaan", "Salin". Semua skenario ini bekerja melalui UIContextMenuInteraction di versi iOS modern.

Menggambar dan aplikasi kreatif — di Procreate, Photoshop, dan aplikasi menggambar lainnya, kekuatan tekanan 3D Touch mengontrol ketebalan kuas, opasitas, atau saturasi warna. Aplikasi membaca UITouch.force (0.0–1.0) dan mengubahnya menjadi parameter alat. Namun untuk menggambar, Apple Pencil di iPad memberikan kontrol tekanan yang lebih akurat (dengan dukungan kemiringan dan azimuth), sehingga 3D Touch di aplikasi kreatif di iPhone kurang diminati.

Pertanyaan yang Sering Diajukan

Apa perbedaan antara 3D Touch dan Haptic Touch?

3D Touch — teknologi perangkat keras yang mengukur kekuatan tekanan melalui sensor kapasitif di layar (iPhone 6S–XS). Haptic Touch — tiruan perangkat lunak yang menggunakan Long Press (menahan) dan umpan balik haptik Taptic Engine. 3D Touch lebih cepat (100 ms vs 500 ms) dan mendukung dua tingkat kekuatan (peek + pop). Haptic Touch tersedia di semua perangkat dengan iOS 13+, termasuk iPhone XR, semua model iPhone 11–16, iPad dan iPod touch.

Bagaimana cara memeriksa apakah perangkat mendukung 3D Touch?

Dalam kode gunakan traitCollection.forceTouchCapability. Nilai .available — 3D Touch didukung, .unavailable — tidak, .unknown — belum ditentukan (tunggu traitCollectionDidChange). Pada perangkat dengan Haptic Touch, forceTouchCapability mengembalikan .unavailable, karena Haptic Touch tidak menggunakan sensor kekuatan perangkat keras. Untuk pengguna pengecekan: Pengaturan → Umum → Aksesibilitas → 3D Touch (hanya di iPhone lama).

Mengapa Apple meninggalkan 3D Touch?

Apple mengganti 3D Touch dengan Haptic Touch karena beberapa alasan: biaya produksi layar dengan sensor tekanan yang tinggi, kompleksitas perbaikan (sensor terintegrasi di layar), kesadaran pengguna yang terbatas (banyak yang tidak tahu fitur ini) dan transisi ke layar OLED dengan Face ID yang lebih sulit dikalibrasi untuk 3D Touch. Haptic Touch lebih murah, lebih sederhana dan tersedia di lebih banyak perangkat.

iPhone mana yang mendukung 3D Touch?

3D Touch didukung oleh: iPhone 6S, 6S Plus, 7, 7 Plus, 8, 8 Plus, X, XS, XS Max. iPhone XR tidak memiliki 3D Touch (pertama dengan Haptic Touch). Semua model iPhone 11, 12, 13, 14, 15, 16 dan SE (generasi ke-2 dan ke-3) menggunakan Haptic Touch. iPad tidak pernah memiliki 3D Touch. Pada perangkat dengan 3D Touch juga tersedia pengaturan sensitivitas (Pengaturan → Umum → Aksesibilitas → 3D Touch).

Bisakah 3D Touch diemulasikan pada perangkat tanpa dukungan?

Ya, iOS secara otomatis mengemulasi 3D Touch melalui Haptic Touch pada perangkat tanpa dukungan perangkat keras. API UIContextMenuInteraction bekerja sama di semua perangkat — sistem sendiri yang memilih pemicu (3D Touch atau Long Press). Untuk kode Anda ini transparan: menu konteks muncul di semua perangkat dengan iOS 13+. Anda tidak perlu menulis logika terpisah untuk 3D Touch dan Haptic Touch — gunakan UIContextMenuConfiguration.

Ringkasan

  • 3D Touch — teknologi perangkat keras pengukuran kekuatan tekanan melalui sensor di layar (iPhone 6S–XS)
  • Haptic Touch — pengganti perangkat lunak yang menggunakan Long Press dengan umpan balik haptik (iOS 13+)
  • Force Touch — teknologi sensor kapasitif untuk pengukuran tekanan dengan akurasi ~10 g
  • Peek and Pop — pola UX asli dengan dua tingkat tekanan (pratinjau dan buka)
  • UIContextMenuInteraction — API iOS modern untuk menu konteks, umum untuk kedua teknologi
  • Quick Actions — menu konteks pada ikon aplikasi untuk tindakan cepat
  • UIForceTouchCapability — pemeriksaan ketersediaan 3D Touch melalui traitCollection

Kami akan mengembangkan aplikasi seluler turnkey

IT Sectr membuat aplikasi iOS dan Android untuk startup dan bisnis sejak 2017. Kami akan memberi saran dan mengusulkan solusi terbaik.

Diskusikan proyek

Baca juga