2013-05-21 68 views
3

我創建了一個服務接口:MvvmCross:如何將Android上下文傳遞給MvxCommand?

public interface IMessageDialogService 
{ 
    void ShowDialog(object context,string title,string message,string buttonTitle); 
} 

我已經實現Android和iOS都該接口。上下文僅用於需要Android上下文以顯示消息對話框的Android。我將這個接口傳入我的ViewModel中,由IoC注入。我的問題是在我的平臺獨立ViewModel調用WebService,然後處理返回值。它檢查返回值的錯誤情況,並需要顯示消息對話框。 iOS不需要任何上下文來顯示UIAlertView,但是在Android上,我如何獲取Android上下文作爲第一個參數傳入?

是否有顯示從視圖模型的簡單信息對話框更簡單的方法?

回答

15

檢查來源爲WebBrowserTask後,它看起來像我總能抓住當前的活動:

var activity = Mvx.Resolve<IMvxAndroidCurrentTopActivity>().Activity; 

所以我沒有傳下來,但是有我在Android上實現IMessageDialogService的抓住它並使用它來顯示消息對話框。

相關問題