Xamarin.iOS'ta Dokunsal Geri Bildirim Sağlama
Genel bakış
i Telefon 7 ve i Telefon 7 Plus'ta Apple, kullanıcıyla fiziksel olarak etkileşim kurmak için ek yollar sağlayan yeni dokunsal yanıtlar eklemiştir. Dokunsal Geri Bildirim (genellikle yalnızca Haptics olarak adlandırılır) Kullanıcı Arabirimi tasarımında dokunma duyusunu (kuvvet, titreşim veya hareket yoluyla) kullanır. Kullanıcının dikkatini çekmek ve eylemlerini pekiştirmek için bu yeni dokunsal geri bildirim seçeneklerini kullanın.
Aşağıdaki konular ayrıntılı olarak ele alınacaktır:
- Dokunsal Geri Bildirim Hakkında
- UIImpactFeedbackGenerator
- UINotificationFeedbackGenerator
- UISelectionFeedbackGenerator
Dokunsal Geri Bildirim Hakkında
Birçok yerleşik kullanıcı arabirimi öğesi Seçiciler, Anahtarlar ve Kaydırıcılar gibi dokunsal geri bildirimler sağlar. iOS 10 artık sınıfın somut bir alt sınıfını UIFeedbackGenerator
kullanarak dokunsalları program aracılığıyla tetikleyebilme olanağını da ekliyor.
Geliştirici, dokunsal geri bildirimleri program aracılığıyla tetikleme amacıyla aşağıdaki UIFeedbackGenerator
alt sınıflardan birini kullanabilir:
UIImpactFeedbackGenerator
- Görünüm slaytları yerine getirildiğinde veya iki ekran nesnenin çarpışması durumunda "thud" sunma gibi bir eylemi veya görevi tamamlamak için bu geri bildirim oluşturucuyu kullanın.UINotificationFeedbackGenerator
- Bu geri bildirim oluşturucusunun tamamlayan, başarısız olan bir eylem veya başka bir uyarı türü gibi bildirimler için kullanın.UISelectionFeedbackGenerator
- Listeden bir öğe seçmek gibi etkin bir şekilde değişen bir seçim için bu geri bildirim oluşturucusundan faydalanabilirsiniz.
UIImpactFeedbackGenerator
Bir Görünüm slaytları yerine getirildiğinde veya iki ekran nesnesi çakıldığında "thud" sunma gibi bir eylemi veya görevi tamamlamak için bu geri bildirim oluşturucuyu kullanın.
Etki geri bildirimini tetikmek için aşağıdaki kodu kullanın:
using UIKit;
...
// Initialize feedback
var impact = new UIImpactFeedbackGenerator (UIImpactFeedbackStyle.Heavy);
impact.Prepare ();
// Trigger feedback
impact.ImpactOccurred ();
Geliştirici sınıfın UIImpactFeedbackStyle
yeni bir örneğini oluşturduğunda UIImpactFeedbackGenerator
geri bildirimin gücünü şu şekilde belirtir:
Heavy
Medium
Light
Prepare
yöntemiUIImpactFeedbackGenerator
, gecikme süresini en aza indirebilmesi için sisteme dokunsal geri bildirimin gerçekleşmek üzere olduğunu bildirmek için çağrılır.
Bu ImpactOccurred
yöntem daha sonra dokunsal geri bildirimi tetikler.
UINotificationFeedbackGenerator
Bu geri bildirim oluşturucusunun tamamlayan, başarısız olan bir eylem veya başka bir uyarı türü gibi bildirimler için kullanın.
Bildirim geri bildirimini tetikleme için aşağıdaki kodu kullanın:
using UIKit;
...
// Initialize feedback
var notification = new UINotificationFeedbackGenerator ();
notification.Prepare ();
// Trigger feedback
notification.NotificationOccurred (UINotificationFeedbackType.Error);
Sınıfın UINotificationFeedbackGenerator
yeni bir örneği oluşturulur ve Prepare
gecikme süresini en aza indirebilmesi için sisteme dokunsal geri bildirimin gerçekleşmek üzere olduğunu bildirmek için yöntemi çağrılır.
NotificationOccurred
, aşağıdakilerden biriyle UINotificationFeedbackType
dokunsal geri bildirimi tetikleme amacıyla çağrılır:
Success
Warning
Error
UISelectionFeedbackGenerator
Listeden öğe çekme gibi etkin bir şekilde değişen bir seçim için bu geri bildirim oluşturucusundan faydalanabilirsiniz.
Seçim geri bildirimini tetikleme için aşağıdaki kodu kullanın:
using UIKit;
...
// Initialize feedback
var selection = new UISelectionFeedbackGenerator ();
selection.Prepare ();
// Trigger feedback
selection.SelectionChanged ();
Sınıfın UISelectionFeedbackGenerator
yeni bir örneği oluşturulur ve Prepare
gecikme süresini en aza indirebilmesi için sisteme dokunsal geri bildirimin gerçekleşmek üzere olduğunu bildirmek için yöntemi çağrılır.
Bu SelectionChanged
yöntem daha sonra dokunsal geri bildirimi tetikler.
Özet
Bu makalede, iOS 10'da sunulan yeni dokunsal geri bildirim türleri ve bunların Xamarin.iOS'ta nasıl uygulandığı ele alınmıştır.