我创建了一个服务接口:
public interface IMessageDialogService
{
void ShowDialog(object context,string title,string message,string buttonTitle);
}
Run Code Online (Sandbox Code Playgroud)
我已在Android和iOS上实现了该界面.上下文仅用于Android,其中需要Android上下文来显示消息对话框.我将此接口传递给我的ViewModel,由IoC注入.我的问题是在我的平台独立的ViewModel中,它调用WebService然后处理返回值.它检查错误条件的返回值,并需要显示消息对话框.iOS不需要任何上下文来显示UIAlertView,但在Android上如何获取Android上下文作为第一个参数传入?
是否有更简单的方法从ViewModel显示简单的信息对话框?
use*_*286 18
在检查WebBrowserTask的源代码之后,看起来我总是可以通过以下方式获取当前的Activity:
var activity = Mvx.Resolve<IMvxAndroidCurrentTopActivity> ().Activity;
Run Code Online (Sandbox Code Playgroud)
所以我不必将其传递下去,但是我在Android上实现了IMessageDialogService并抓住它并使用它来显示消息对话框.
| 归档时间: |
|
| 查看次数: |
2554 次 |
| 最近记录: |