2013-05-17 43 views
4

我會在我的MvxCommand中導航到一個簡單的URL?所有的移動平臺都有一個機制來向OS請求一個可以顯示URL內容的Activity或ViewController。我將如何與MvvmCross合作?我知道的一種方法是在調用ShowViewModel時,演示者可以檢測到執行特殊的OpenUrl命令時,將特殊的東西放入presentationBundle和/或parameterBundle中。但是,這是最好的方式嗎?MvvmCross:如何導航到除ViewModel之外的其他內容?

回答

2

有一個插件,它允許這一點 - https://github.com/slodge/MvvmCross/tree/v3/Plugins/Cirrious/WebBrowser

如果插件加載,然後視圖模型可以使用:

public class MyViewModel : MvxViewModel 
{ 
    private readonly IMvxWebBrowserTask _webBrowser; 

    public MyViewModel(IMvxWebBrowserTask webBrowser) 
    { 
     _webBrowser = webBrowse; 
    } 

    public ICommand ShowWebPage 
    { 
     get { return new MvxCommand(() => _webBrowser.ShowWebPage("https://github.com/slodge/mvvmcross"); 
    } 
} 

你可以看到這個用在,例如:

如果您需要創建自己的插件,請參見https://speakerdeck.com/cirrious/plugins-in-mvvmcross

相關問題