MonoTouch.Dialog:在后台设置StyledStringElement的图像

时间:2012-04-12 00:47:49

标签: c# ios xamarin.ios monotouch.dialog

我的应用计算StyledStringElement的图像,此过程需要花费大量时间。这一切都在当地完成。

我该怎么做这样的伪代码:

myElement.Image = PlaceHolderImage; 
myElement.GoGetTheImageFromSomeLongRunningTask = GetImageFromSomeFuntionThatWillTakeTime();

1 个答案:

答案 0 :(得分:2)

你可以使用这样的东西(未经测试):

myElement.Image = PlaceHolderImage;
ThreadPool.QueueUserWorkItem ((v) =>
{
    var image = GetImageFromSomeFunctionThatWillTakeTime ();
    BeginInvokeOnMainThread (() =>
    {
        myElement.Image = image;
        myRoot.ReloadData ();
    });
});

请注意,这假设GetImageFromSomeFunctionThatWillTakeTime实际上可以在辅助线程上执行。您可以使用当前的MonoTouch测试版(5.3.2)轻松测试这一点,因为如果您执行了辅助线程上不允许的操作,您将收到异常。