如何将Bitmap转换为View?

时间:2011-07-22 11:32:02

标签: java android

我有一个back.png文件,我需要

  1. 分配给变量并转换为位图
  2. 对其应用色调功能
  3. 然后把它放回去
  4. a = BitmapFactory.decodeResource(this.getResources(),R.drawable.back);
    
    b = Hue(a);
    
    View c = (View)findViewById(R.drawable.back);
    
    ///need to make View C = Bitmap B ... but how?
    

    到目前为止,这是我的代码,一切正常,只有我不知道如何将我的位图“b”分配回来查看“c”......任何想法?

    谢谢!

    backrepeat.xml

    <?xml version="1.0" encoding="utf-8"?>
    
        <bitmap xmlns:android="http://schemas.android.com/apk/res/android"
        android:src="@drawable/back" 
        android:tileMode="repeat" />
    

    AbsoluteLayout al = (AbsoluteLayout)findViewById(R.id.setLay);
    Drawable dback = al.getBackground();
    a = ((BitmapDrawable)dback).getBitmap();
    //b = Hue(a);
    d =new BitmapDrawable(a);
    al.setBackgroundDrawable(d);
    

    编辑,厌倦了那一个,但是从一个drawable转换为一个位图然后又一个又一个让它变得松软。我只是在屏幕上伸出一个位图......

2 个答案:

答案 0 :(得分:3)

我要做的是在布局XML中使用ImageView(在此示例中它具有图像ID),然后使用

ImageView c = (ImageView)findViewById(R.id.image);

然后您可以使用

为其分配位图
image.setImageBitmap(b);

答案 1 :(得分:1)

你在做什么...... R.drawable.back必须是一个png文件,它不能是一个视图....

我的意思是你必须使用的视图将是主要视图,如亲戚,absoulte,框架等或imageview ....你必须有这样的观点之一

编辑 - &GT;&GT;

d = new BitmapDrawable(bm);
rl.setBackgroundDrawable(d);

其中rl是我的相对布局

RL =(RelativeLayout的)findViewById(R.id.brl);