iOS
UIFeedbackGenerator
खोज…
परिचय
UIFeedbackGenerator
और इसके उपवर्ग आईपैड पर पाए जाने वाले Taptic Engine® के लिए एक सार्वजनिक इंटरफ़ेस प्रदान करता है, जो iPhone 7 से शुरू होता है। Haptics, ब्रांडेड Taptics, ऑन-स्क्रीन ईवेंट के लिए स्पर्श प्रतिक्रिया प्रदान करते हैं। जबकि कई सिस्टम कंट्रोल, UIFeedbackGenerator
को आउट-ऑफ-द-बॉक्स प्रदान करते हैं, डेवलपर्स कस्टम नियंत्रणों और अन्य घटनाओं में UIFeedbackGenerator
को जोड़ने के लिए UIFeedbackGenerator
उप-वर्ग का उपयोग कर सकते हैं। UIFeedbackGenerator
एक सार वर्ग है जिसे सीधे उपयोग नहीं किया जाना चाहिए, बल्कि डेवलपर्स इसके उपवर्गों में से एक का उपयोग करते हैं।
ट्रिगर इंपैक्ट हैप्टिक
उदाहरण दिखाता है कि बटन दबाए जाने के बाद UIImpactFeedbackGenerator
का उपयोग करके एक प्रभाव haptic को कैसे ट्रिगर किया UIImpactFeedbackGenerator
।
तीव्र
class ViewController: UIViewController
{
lazy var button: UIButton =
{
let button = UIButton()
button.translatesAutoresizingMaskIntoConstraints = false
self.view.addSubview(button)
button.centerXAnchor.constraint(equalTo: self.view.centerXAnchor).isActive = true
button.centerYAnchor.constraint(equalTo: self.view.centerYAnchor).isActive = true
button.setTitle("Impact", for: .normal)
button.setTitleColor(UIColor.gray, for: .normal)
return button
}()
// Choose between heavy, medium, and light for style
let impactFeedbackGenerator = UIImpactFeedbackGenerator(style: .heavy)
override func viewDidLoad()
{
super.viewDidLoad()
button.addTarget(self, action: #selector(self.didPressButton(sender:)), for: .touchUpInside)
// Primes feedback generator for upcoming events and reduces latency
impactFeedbackGenerator.prepare()
}
func didPressButton(sender: UIButton)
{
// Triggers haptic
impactFeedbackGenerator.impactOccurred()
}
}
उद्देश्य सी
@interface ViewController ()
@property (nonatomic, strong) UIImpactFeedbackGenerator *impactFeedbackGenerator;
@property (nonatomic, strong) UIButton *button;
@end
@implementation ViewController
- (void)viewDidLoad
{
[super viewDidLoad];
[self.button addTarget:self action:@selector(didPressButton:) forControlEvents:UIControlEventTouchUpInside];
// Choose between heavy, medium, and light for style
self.impactFeedbackGenerator = [[UIImpactFeedbackGenerator alloc] initWithStyle:UIImpactFeedbackStyleHeavy];
// Primes feedback generator for upcoming events and reduces latency
[self.impactFeedbackGenerator prepare];
}
- (void)didPressButton:(UIButton *)sender
{
// Triggers haptic
[self.impactFeedbackGenerator impactOccurred];
}
#pragma mark - Lazy Init
- (UIButton *)button
{
if (!_button)
{
_button = [[UIButton alloc]init];
_button.translatesAutoresizingMaskIntoConstraints = NO;
[self.view addSubview:_button];
[_button.centerXAnchor constraintEqualToAnchor:self.view.centerXAnchor].active = YES;
[_button.centerYAnchor constraintEqualToAnchor:self.view.centerYAnchor].active = YES;
[_button setTitle:@"Impact" forState:UIControlStateNormal];
[_button setTitleColor:[UIColor grayColor] forState:UIControlStateNormal];
}
return _button;
}
@end
Modified text is an extract of the original Stack Overflow Documentation
के तहत लाइसेंस प्राप्त है CC BY-SA 3.0
से संबद्ध नहीं है Stack Overflow