在Xamarin forms IOS中使用CrossMediaManager播放Mp3文件时更改DisplayImage
我试图在使用CrossMediaManager播放mp3文件时更改显示图像,但似乎没有更改图像。它确实会更改标题、id等,但我不知道为什么它不能更改显示图像在Xamarin forms IOS中使用CrossMediaManager播放Mp3文件时更改DisplayImage,xamarin,xamarin.forms,xamarin.android,xamarin.ios,Xamarin,Xamarin.forms,Xamarin.android,Xamarin.ios,我试图在使用CrossMediaManager播放mp3文件时更改显示图像,但似乎没有更改图像。它确实会更改标题、id等,但我不知道为什么它不能更改显示图像 async Task ExecutePlayChapterCommand() { if (IsBusy) return; IsBusy = true; try { await Task.Delay
async Task ExecutePlayChapterCommand()
{
if (IsBusy) return;
IsBusy = true;
try
{
await Task.Delay(TimeSpan.FromMilliseconds(10));
var reciter = Reciters.FirstOrDefault();
Device.BeginInvokeOnMainThread(async() => {
var mediaItem = await CrossMediaManager.Current.Play(reciter.DownloadURL);
CrossMediaManager.Current.Queue.Current.IsMetadataExtracted = false;
mediaItem.Title = reciter.Name;
var image = new Image() { Source = ImageSource.FromUri(new Uri(reciter.ImagePath)) };
CrossMediaManager.Current.Queue.Current.Title = string.Format("{0} - {1} ({2})", "1", "ChName", "English");
CrossMediaManager.Current.Queue.Current.Album = reciter.Name;
CrossMediaManager.Current.Queue.Current.Artist = reciter.Name;
CrossMediaManager.Current.Queue.Current.AlbumImage = image;
CrossMediaManager.Current.Queue.Current.AlbumImageUri = reciter.ImagePath;
CrossMediaManager.Current.Queue.Current.DisplayImage = image;
CrossMediaManager.Current.Queue.Current.DisplayImageUri = reciter.ImagePath;
CrossMediaManager.Current.Queue.Current.Image = image;
CrossMediaManager.Current.Queue.Current.ImageUri = reciter.ImagePath;
CrossMediaManager.Current.Notification.UpdateNotification();
});
}
catch (Exception ex)
{
Debug.WriteLine(ex.Message);
}
finally { IsBusy = false; }
}
}
在中上载了一个示例项目,请尝试在主线程操作中更改图像。使用
Device.BeginInvokeOnMainThread()
@LeoZhu MSFT,我有带和不带它,但都不起作用。我在Github中上载了一个示例(更新了我的问题)。你是说collectionview中的图像更改了吗?不,单击“播放”按钮时,相关图像(来自url)应该显示在播放控件中。单击播放按钮并锁定Android/iPhone。图像应在锁定屏幕播放器中更改。现在它显示应用程序图标,但它应该显示相关的图像。它与集合视图无关。