title: set background image from ImageView
body: <p>according to the title i need to set the background image for a relative layout from a imageview that i load at runtime, reading from a URL.
  Ive tried outer.setBackground(background.getDrawable()); but it doesnt work for me:</p>
  
  <pre><code>//OUTER
  RelativeLayout outer = (RelativeLayout)findViewById(R.id.outer);
  //BACKGROUND
  ImageView background = new ImageView(getApplicationContext());
  Background reader = new Background(this, this, background);
  reader.execute();
  outer.setBackground(background.getDrawable());
  </code></pre>
  
  <p>loader class:</p>
  
  <pre><code>public class Background extends AsyncTask&lt;Void, Void, Bitmap&gt; {
  
      ImageView MyView = null;
      ProgressDialog dialog;
  
      private OnTaskComplete mlistener;
  
      public Background(Context context, OnTaskComplete mlistener, ImageView view) {
          this.mlistener = mlistener;
          MyView = view;
      }
  
      @Override
      protected Bitmap doInBackground(Void... params) {
  
          Bitmap image = null;
  
          try {
              URL url = new URL("http://www.youth-stories.com/public/admin/CH_Settings/background.jpg");
              image = BitmapFactory.decodeStream(url.openConnection().getInputStream());
  
  
          } catch (IOException e) {
              e.printStackTrace();
          }
  
          return image;
      }
  
      @Override
      protected void onPostExecute(Bitmap bitmap) {
          super.onPostExecute(bitmap);
          mlistener.callBackFunction(bitmap);
          MyView.setImageBitmap(bitmap);
      }
  }
  
  public class Home extends ActionBarActivity implements OnTaskComplete, ScrollViewListener {
  
      Scroller scrollview = null;
      @Override
      public void onScrollChanged(Scroller scrollView, int x, int y, int oldx, int oldy) {
         // Toast.makeText(this,"sl",Toast.LENGTH_LONG).show();
          list();
      }
  
      LinearLayout wrapper = null;
      Context context = this;
  
      public Bitmap imageHandler;
  
      @Override
      public void callBackFunction(Bitmap image) {
  
          imageHandler = image;
  
  /*
          RelativeLayout outer = (RelativeLayout)findViewById(R.id.outer);
          BitmapDrawable bd = new BitmapDrawable(getResources(), image);
          outer.setBackground(bd);
  */
  
      }
  
      public class Post{
  
          String id;
          String title;
          String description;
          String release;
  
          public String getTitle() {
              return title;
          }
  
          public String getDescription() {
              return description;
          }
  
          public String getRelease() {
              return release;
          }
  
          public void setTitle(String title) {
              this.title = title;
          }
  
          public void setDescription(String description) {
              this.description = description;
          }
  
          public void setRelease(String release) {
              this.release = release;
          }
  
          public void setId(String id) {
              this.id = id;
          }
  
          public String getId() {
  
              return id;
          }
  
      }
  
      @Override
      protected void onCreate(Bundle savedInstanceState){
          super.onCreate(savedInstanceState);
          setContentView(R.layout.activity_home);
  
          //OUTER
          RelativeLayout outer = (RelativeLayout)findViewById(R.id.outer);
          //BACKGROUND
          ImageView background = new ImageView(getApplicationContext());
          Background reader = new Background(this, this, background);
          reader.execute();
  
          BitmapDrawable bd = new BitmapDrawable(getResources(), background);
          outer.setBackground(bd);
  
  
          //SCROLLER
          Scroller scroller = new Scroller(this, this);
          scroller.setLayoutParams(new RelativeLayout.LayoutParams(
                  RelativeLayout.LayoutParams.FILL_PARENT, RelativeLayout.LayoutParams.FILL_PARENT));
  
          //WRAPPER
          wrapper = new LinearLayout(this);
          wrapper.setOrientation(LinearLayout.VERTICAL);
  
          outer.addView(scroller);
          scroller.addView(wrapper);
  
          Globals.FOCUSON_PAGE = 0;
          list();
  
      }
  
  
      public void list(){
  
          ProgressDialog dialog = new ProgressDialog(context);
          dialog.setMessage("loading contents, please wait..");
          dialog.setCancelable(false);
          dialog.show();
  
  
          String result = null;
          ArrayList&lt;Post&gt; focusOn = new ArrayList&lt;Post&gt;();
  
  
          try {
              URL address = new URL("http://www.youth-stories.com/api/focusOnAll.php");
              URLDataReader reader = new URLDataReader(context);
              result = reader.execute(address).get();
  
          }catch (IOException e){
              e.printStackTrace();
          } catch(InterruptedException e){
              e.printStackTrace();
          } catch (ExecutionException e){
              e.printStackTrace();
          }
          try {
              JSONObject obj = new JSONObject(result);
              String success = (String) obj.getString("success");
              JSONArray records = obj.getJSONArray("records");
  
              int start = (Globals.FOCUSON_PAGE * Globals.FOCUSON_STEP);
              int limit = start + Globals.FOCUSON_STEP;
              for(int i = start ; i &lt; limit; i++) {
  
                  Post tmp = new Post();
                  tmp.setId(records.getJSONObject(i).getString("id"));
                  tmp.setTitle(records.getJSONObject(i).getString("title"));
                  tmp.setDescription(records.getJSONObject(i).getString("contents"));
                  tmp.setRelease(records.getJSONObject(i).getString("data_post"));
                  focusOn.add(tmp);
              }
  
          }catch (JSONException e){
              e.printStackTrace();
          }
  
  
          //wrapper
          LinearLayout container = wrapper;
  
          for(int i = 0; i &lt; focusOn.size(); i++) {
              //item
              LinearLayout item = new LinearLayout(getApplicationContext());
              String select = focusOn.get(i).getId();
              item.setId(new Integer(select));
              item.setClickable(true);
  
              //setUp new activity
              final Intent intent = new Intent(getApplicationContext(),HomeOnSelect.class);
              Bundle bundle = new Bundle();
              int id = item.getId();
              String strid = new Integer(id).toString();
              bundle.putString("id",  strid);
              bundle.putString("title",   focusOn.get(i).getTitle());
              bundle.putString("contents", focusOn.get(i).getDescription());
              bundle.putString("release", focusOn.get(i).getRelease());
              intent.putExtras(bundle);
  
              item.setOnClickListener(new View.OnClickListener() {
                  @Override
                  public void onClick(View v) {
                      startActivity(intent);
                  }
              });
              container.addView(item);
              item.setOrientation(LinearLayout.HORIZONTAL);
              item.setPadding(0, 40, 0, 40);
              item.setGravity(Gravity.CENTER_VERTICAL);
              item.setBackgroundResource(R.drawable.postlayout);
  
              //image
              ImageView asset = new ImageView(getApplicationContext());
              URL address = null;
  
              try {
  
                  address = new URL("http://www.youth-stories.com/public/admin/CH_FocusOn/images/" + focusOn.get(i).getId() + "_thumb2.jpg");
                  URLImageReader reader = new URLImageReader(this, this, asset, dialog, i, focusOn.size());
                  reader.execute(address);
  
              } catch (MalformedURLException e) {
                  e.printStackTrace();
              }
  
              item.addView(asset);
  
              LinearLayout.LayoutParams imgSettings = new LinearLayout.LayoutParams(300, 300);
  
              asset.setLayoutParams(imgSettings);
              asset.setPadding(50,0,0,0);
  
              //inside
              LinearLayout contents = new LinearLayout(getApplicationContext());
              contents.setOrientation(LinearLayout.VERTICAL);
              contents.setPadding(55, 0, 100, 0);
              item.addView(contents);
              //title
              TextView title = new TextView(getApplicationContext());
              title.setText(focusOn.get(i).getTitle());
              title.setTextAppearance(this, R.style.title);
              contents.addView(title);
              //description
              TextView description = new TextView(getApplicationContext());
              description.setText(focusOn.get(i).getDescription());
              description.setTextAppearance(this, R.style.description);
              contents.addView(description);
              //date
              TextView date = new TextView(getApplicationContext());
              date.setText(focusOn.get(i).getRelease());
              date.setTextAppearance(this, R.style.description);
              contents.addView(date);
              //div
              LinearLayout div = new LinearLayout(getApplicationContext());
              div.setLayoutParams(new LinearLayout.LayoutParams(200, 40));
              div.setBackgroundColor(Color.parseColor("#00000000"));
              container.addView(div);
          }
  
  
      }
  
      @Override
      public boolean onCreateOptionsMenu(Menu menu) {
          MenuInflater inflater = getMenuInflater();
          inflater.inflate(R.menu.menu_home, menu);
  
          SearchManager searchManager = (SearchManager) getSystemService(Context.SEARCH_SERVICE);
          SearchView searchView = (SearchView) menu.findItem(R.id.search).getActionView();
  
          return true;
      }
  
      @Override
      public boolean onOptionsItemSelected(MenuItem item){
          switch(item.getItemId()){
              case R.id.search:
                  return true;
              default:
                  return super.onOptionsItemSelected(item);
          }
      }
  
  }
  </code></pre>