使用齐射在根视图(相对布局)上设置背景

时间:2014-03-17 02:32:32

标签: android android-drawable android-volley

如何使用来自远程服务器的凌空将图像背景设置为根视图(相对布局)?通常可以使用以下方法将drawable设置为背景:

  RelativeLayout rLayout = (RelativeLayout) findViewById (R.id.rLayout);
  Resources res = getResources(); //resource handle
  Drawable drawable = res.getDrawable(R.drawable.newImage); 
  rLayout.setBackgroundDrawable(drawable);

但除了方法createFromPath()之外,我无法找到一种从图像网址中删除画面的方法。我无法找到如何使用凌空。

1 个答案:

答案 0 :(得分:1)

您可以通过以下网址获取图片:

URL url = new URL(imageUrlString);
Bitmap image = BitmapFactory.decodeStream(url.openConnection().getInputStream());

然后使用您的代码将其应用于您的布局:

RelativeLayout rLayout = (RelativeLayout) findViewById (R.id.rLayout);
Drawable drawable = new BitmapDrawable(getResources(), image)
rLayout.setBackgroundDrawable(drawable);

请注意,最好在AsyncTask中执行此操作。前两行将在doInBackground()中,最后三行将在onPostExecute()中。我就是这样做的,但是我没有使用Volley,我想这会更复杂。如果你想使用Volley图像缓存,那么this tutorial适合你。