Xamarinプロジェクト PCL アンドロイド IOSXamarin:どのようにアンドロイドでPCLからイベントを発射する、PCL
私はAndroid.MainActivity のメソッドを持っており、PCL
からそれを呼び出したいですXamarinプロジェクト PCL アンドロイド IOSXamarin:どのようにアンドロイドでPCLからイベントを発射する、PCL
私はAndroid.MainActivity のメソッドを持っており、PCL
からそれを呼び出したいですソリューションのデフォルトアーキテクチャは常にUI-> PCLになります。 UIプロジェクトはPCLプロジェクトを参照します。したがって、UIプロジェクト(MainActivity)のコードは、PCLのクラス/メソッドを呼び出す/参照することができます。しかし、PCLはUIプロジェクトのクラス/メソッドにコール/参照を戻すことができません。また、循環参照を避けるためです。
あなたがする予定のものにするために、あなたは、2つのオプションがあります:
オプション1
使用依存関係サービスを。詳細については、HEREのガイドを参照してください。基本的には、インターフェースにUIタイプを登録し、インターフェースを介してPCLコールを登録します。
オプション2
PCLクラスMainActivityがイベントを登録し、呼び出したいメソッドを呼び出します
public event Action SomeEvent;
イベントを持っています。
[PCL class].SomeEvent += SomeEventHandlerMethod;
次に、PCLでMainActivityメソッドを呼び出す場合は、そのイベントを呼び出すだけです。
SomeEvent();
オプション2は申し訳ありません...ものの – RikudouSennin
例外を除いて完全な質問を送ってください。 MessagingCenterを使用して、これがあなたの要件を解決したかもしれません。
私のために働きました私はCode StackOverFlowを無視して追加しなければならなかった –
例外 –
使用DependencyServiceとの完全な質問送ってください:https://developer.xamarin.com/guides/xamarin-forms/application-fundamentals/dependency-service/ – Jason