Delphi + iOS: как объявить простой ObjC-класс?

Как я могу объявить простой ObjC-класс в Delphi / Firemonkey (XE5 или XE6)? Я хочу создать класс делегата анимации с некоторыми методами делегата внутри этого класса.

Благодаря!

Создайте интерфейс с вашими методами и получите от IObjectiveC. Также создайте направляющую. Я не размещаю его здесь, так что никто не соблазняется использовать мой.

ISampleDelegate = interface(IObjectiveC) ['{put-your-own-guid-here}'] // <-- Press Ctrl+Shift+G to create your own guid - must be unique for every interface procedure DispatchItem(Sender: Pointer); cdecl; end; 

Создайте свою реализацию делегата и получите TOCLocal. Он должен реализовать ваш интерфейс делегата.

  TSampleDelegate = class(TOCLocal, ISampleDelegate) private FOwner: TMenuItem; public constructor Create(AOwner: TMenuItem); procedure DispatchItem(Sender: Pointer); cdecl; end; constructor TSampleDelegate.Create(AOwner: TMenuItem); begin inherited Create; FOwner := AOwner; end; 

Создайте делегат:

 FDelegate: ISampleDelegate; FDelegate := TSampleDelegate.Create(Self); 

Назначьте своего делегата:

 Item.setDelegate(FDelegate); 

Бесплатный делегат:

 Item.setDelegate(nil); TNSObject.Wrap((FDelegate as ILocalObject).GetObjectID).release; // don't forget this one! The create constructor calls Alloc in inherited FDelegate := nil; 
  • Есть ли способ установить тип клавиатуры при вводе значения в StringGrid?
  • Как я могу использовать жесты для iPhone-приложений с помощью Delphi Firemonkey?
  • TwebBrowser Zoom / Gesture не работает для firemonkey / iOs в XE4 при открытии pdf-файла
  • Приложение XE4 iOS: невозможно установить пакет. (e8008015)
  • Открытие URL-адреса в приложении ios
  • Недействительная ошибка запуска изображения при загрузке IPA с загрузчиком приложений ERROR ITMS-90094
  • Проекты не запускаются в iOS при добавлении XSuperObject
  • Внешнее тестирование Delphi FMX не поддерживается для сборок, созданных с помощью бета-версии XCode, OS X или IOS
  • Является ли программирование жестов мультитач доступным в приложениях Delphi Firemonkey для iOS?
  • Сохранить TiniFile из приложения в iOS
  • Как получить доступ к акселерометру iOS в Delphi XE2?
  • Interesting Posts

    Текст ячеек ячеек перекрывается в ячейках

    Swift: реализация представления коллекции без контроллера просмотра коллекции

    Синхронизация клиентской базы данных SQLite с базой данных сервера MySQL

    Как сохранить локально PDF или другие файлы в iOS

    В чем преимущества использования предварительно скомпилированной статической библиотеки напрямую, включая исходный код?

    Как выбрать строку таблицы во время длительного нажатия в Swift

    типизированный доступ к результату из FBSDKGraphRequest (FBSDK v 4.1.0)

    supportInterfaceOrientations не вызывается в iPad

    Swift конвертирует NSDate в 24h формат сбой на устройстве

    Изображение не отображается в imageView, если я использовал круговое изображение

    Разбор словаря SwiftyJSON

    iOS UIButton Touch Drag Enter Не работает так, как ожидалось?

    Преобразовать NSDate в длинную строку формата и обратно?

    Мое приложение работает на симуляторе, но не на устройстве

    UICollectionView registerClass: метод forCellWithReuseIdentifier прерывает UICollectionView

    Давайте будем гением компьютера.