2011-07-22 244 views
0

我有我需要如何将位图转换为视图?

  1. 分配给一个变量,并转换为位图
  2. 应用色调功能,它
  3. ,并把它放回去
一个back.png文件
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); 

编辑,累了的那一个,但是从绘制转换为位图,然后再回到使得洛斯被tileing。我刚刚得到一个位图拉伸整个屏幕...

+0

c.setImageBitmap(b); – ingsaurabh

回答

1

笏る做... R.drawable.back必须是一个PNG文件时,它不能是一个视图....

我的意思查看U必须使用会像相对,absoulte,框架等一个或imageview的主视图....ü必须有这样的观点

编辑一个 - >>

d =新BitmapDrawable(BM );
rl.setBackgroundDrawable(d);

其中R1是我的相对布局

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

+0

d是一个位图可绘制声明它lyk私人BitmapDrawable d; 我已经多次使用此代码... – user632905

+0

哦,你的意思是我应该从它已经设置为背景的地方,即在absoulteView? – Roger

+0

没有不完全你可以从很多方面... ...你可以直接把它形成可绘制的文件夹..或SD卡或互联网或相机或你可以创建一个位图....如你所愿但我已播种上面是将该位图设置为布局背景..并且这是 – user632905

3

我会怎么做,是在布局XML的ImageView的(在这个例子中它具有图像的ID),然后用

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

然后你就可以用

image.setImageBitmap(b);
指派位图给它
+0

我确实有一个backrepeat.xml与它的位图,见上文。但是,如果我使用ImageView而不是位图,那么我将无法将其用作其他布局的背景... – Roger

+0

所以,您希望将位图用作背景吗?请按照我编辑的评论 – user632905

+0

是的,它需要平铺。 – Roger