खोज…


परिचय

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