什麼是C#相當於下面的Java的代碼片段:提前的Android的Java與C#URL下面
Drawable image;
URL imageUrl;
imageUrl = new URL(getMyImageUrl(imageNumber));
Bitmap bitmap = BitmapFactory.decodeStream(imageUrl.openStream());
image = new BitmapDrawable(bitmap);
感謝。
什麼是C#相當於下面的Java的代碼片段:提前的Android的Java與C#URL下面
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);
這是單聲道的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,所以如果我錯了,請糾正我。
Drawable是android特有的東西。 – 2011-03-29 13:13:58
好吧,但將位圖是等價的,還是我那麼遠? – 2011-03-29 13:15:35
真的嗎?這不是有效的C#。會爲Stream推薦一個'using'語句,丟失'private'關鍵字並在問題中包含對'getMyImageUrl'的調用。只是試圖幫助 – 2011-03-29 12:41:20
'Close()'將緩衝區刷新到流中... – Cipi 2011-03-29 12:41:22
@Kieren最新的問題是什麼? – mcabral 2011-03-29 12:42:28