![]() |
UIImpactFeedbackGenerator: fehlende Klasse deklarieren und nutzen?
Hallo!
Ich versuche gerade, eine bisher nicht eingebundene ObjectiveC-Klasse in meinem Projekt zu deklarieren und mache dabei etwas falsch. Es handelt sich um den seit iOS 10 verfügbaren
Delphi-Quellcode:
, der unterschiedliche Haptic-Feedbacks ermöglicht, z.B. kurze Vibration, wenn ein GUI-Objekt betätigt. Von dieser Klasse werden drei weitere Klassen für unterschiedliche Situationen abgeleitet. Eins dieser Klassen, nähmlich
UIFeedback​Generator
Delphi-Quellcode:
versuche ich nun in mein Projekt einzubinden.
UIImpact​Feedback​Generator
Delphi-Quellcode:
Die App stürzt ab. Was mache ich falsch?
...
const UIImpactFeedbackStyleLight = 0; {$EXTERNALSYM UIImpactFeedbackStyleLight} UIImpactFeedbackStyleMedium = 1; {$EXTERNALSYM UIImpactFeedbackStyleMedium} UIImpactFeedbackStyleHeavy = 2; {$EXTERNALSYM UIImpactFeedbackStyleHeavy} type UIImpactFeedbackStyle = NSInteger; UIFeedbackGeneratorClass = interface(NSObjectClass) ['{6B7EC779-C032-4F7A-B51B-BAF0E4249CE6}'] end; UIFeedbackGenerator = interface(NSObject) ['{5EFF0FE8-F7F1-4443-90B0-94B69C6F9F01}'] procedure prepare; cdecl; end; TUIFeedbackGenerator = class(TOCGenericImport<UIFeedbackGeneratorClass, UIFeedbackGenerator>) end; UIImpactFeedbackGeneratorClass = interface(NSObjectClass) ['{4AD834AB-9CC2-43F2-891B-F0BDD4F03732}'] end; UIImpactFeedbackGenerator = interface(UIFeedbackGenerator) ['{8BFE603E-FFBC-4109-9AAE-62F77ED4CD57}'] function initWithStyle(style: UIImpactFeedbackStyle): Pointer; procedure impactOccurred; cdecl; end; TUIImpactFeedbackGenerator = class(TOCGenericImport<UIImpactFeedbackGeneratorClass, UIImpactFeedbackGenerator>) end; ... implementation ... procedure TapDetailsEvents.showClick(Sender: TObject); var vibrationFeedback: UIImpactFeedbackGenerator; begin vibrationFeedback := TUIImpactFeedbackGenerator.Wrap(TUIImpactFeedbackGenerator.OCClass.alloc); //<---Bereits an dieser Zeile stürzt die App ab vibrationFeedback.initWithStyle(UIImpactFeedbackStyleLight); vibrationFeedback.impactOccurred; ... end; Danke! |
AW: UIImpactFeedbackGenerator: fehlende Klasse deklarieren und nutzen?
Problem gelöst :oops::oops::oops::oops:
Peinlich:
Delphi-Quellcode:
vergessen.
cdecl;
Delphi-Quellcode:
UIImpactFeedbackGenerator = interface(UIFeedbackGenerator)
['{8BFE603E-FFBC-4109-9AAE-62F77ED4CD57}'] function initWithStyle(style: UIImpactFeedbackStyle): Pointer; cdecl; //<------ HIER procedure impactOccurred; cdecl; end; TUIImpactFeedbackGenerator = class(TOCGenericImport<UIImpactFeedbackGeneratorClass, UIImpactFeedbackGenerator>) end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:06 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz