以下 Java 代码段的 C# 等效项是什么:
Drawable image;
URL imageUrl;
imageUrl = new URL(getMyImageUrl(imageNumber));
Bitmap bitmap = BitmapFactory.decodeStream(imageUrl.openStream());
image = new BitmapDrawable(bitmap);
提前致谢。
以下 Java 代码段的 C# 等效项是什么:
Drawable image;
URL imageUrl;
imageUrl = new URL(getMyImageUrl(imageNumber));
Bitmap bitmap = BitmapFactory.decodeStream(imageUrl.openStream());
image = new BitmapDrawable(bitmap);
提前致谢。
到 C# 的更直接的转换是:
var imageUrl = new Java.Net.URL(GetMyImageUrl(imageNumber));
var bitmap = Android.Graphics.BitmapFactory.DecodeStream (imageUrl.OpenStream ());
var image = new Android.Graphics.Drawables.BitmapDrawable (bitmap);
这是 Mono for Android 的优势之一:类和方法反映了底层 Java 平台(有一些例外),同时提供了大部分 .NET 框架,因此将代码从 Java 迁移到 C# 应该相当简单。
using System.Drawing;
using System.Drawing.Imaging;
public Bitmap DownloadImage(string imageUrl)
{
try
{
WebClient client = new WebClient();
using(Stream stream = client.OpenRead(imageUrl))
{
Bitmap bitmap = new Bitmap(stream);
}
}
catch(Exception)
{
//todo: handle me
throw;
}
return bitmap
}
看看http://www.dreamincode.net/code/snippet2555.htm。我假设你会想要使用位图。我从未在 Java 中使用过Drawable,如果我错了,请纠正我。