以下の次の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 の強みの 1 つです。クラスとメソッドは、.NET フレームワークの多くを提供する一方で、基礎となる Java プラットフォームをミラーリングします (いくつかの例外があります)。そのため、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をご覧ください。私はあなたが Bitmap を使いたいと思っていると思いました。私は Java でDrawableを使ったことがないので、間違っていたら訂正してください。