2013-08-05 61 views
3

我在Android應用程序中發現了一系列方法,其中RunOnUiThread用於調用其他方法,這些方法也將其內容包裝在RunOnUiThread中。我想假設該方法只會從另一個已經獲得UI線程的方法中調用,並在該條件不滿足時拋出異常。 Xamarin.iOS公開UIApplication.EnsureUIThread,這很好地處理。EnsureUIThread相當於Xamarin.Android(Android版單機版)?

Xamarin.Android中是否有與Xamarin.iOS(MonoTouch)UIApplication.EnsureUIThread等價的行爲?

回答

1

我在Xamarin Forum發現喬納森·普賴爾一個帖子,上面寫着以下屬性:

SynchronizationContext.Current 

僅在UI線程非空。因此,您可以編寫一個可以檢查該屬性爲null的自定義方法。然後根據需要拋出異常。