Xamarin iOS Обязательное преобразование метода во время выполнения - PullRequest
0 голосов
/ 08 января 2020

Я застрял в проблеме, когда писал Библиотека привязок Xamarin .

Предпосылки

  1. У меня iOS Native Framework.
  2. У меня есть приложение Xamarin Forms.

Мне нужно написать библиотеку привязок Xamarin, которую я могу успешно написать.

Теперь я получил застрял

iOS API Native Framework (в MyClass.h) : -

-(void)clearAllDishes:(NSError * _Nullable * _Nullable)error;

API связующего кода (в ApiDefination.cs) : -

[BaseType(typeof(NSObject))]
public interface MyClass
{
    // -(void)clearAllDishes:(NSError * _Nullable * _Nullable)error;
    [Export("clearAllDishes:")]
    void ClearAllDishes([NullAllowed] out NSError error);
}

Теперь в интерфейсе Xamarin нам нужно вызвать метод ниже : -

try {
MyClass obj = new MyClass();
obj.clearAllDishes()
} catch throws Custom Exception {
   // Assuming the MyClass will throw the exception, when NSError pointer passed in iOS Native Framework.
}

Теперь мое требование из интерфейса Xamarin Мне нужно позвонить метод clearAllDishes() и далее в Связывании библиотеки Xamarin. Я должен обработать clearAllDishes() таким образом, чтобы мы могли выбросить исключение для пользовательского интерфейса Xamarin отсюда и вызвать iOS Native API clearAllDishes.

...