Android:使用图库

时间:2015-05-07 19:46:23

标签: android

所以我希望用户可以选择用图库中的自己的图片来更改程序背景。我有一个按钮,我将图像保存为位图,并尝试使用button.setBackgroundDrawable()这样做,但它将图片放在按钮上,以便只能看到按钮文本,它也不会使图片全屏。这是我的一些代码:

if (bitmap != null) {
                bitmap.recycle();
            }
            InputStream stream = getContentResolver().openInputStream(data.getData());
            bitmap = BitmapFactory.decodeStream(stream);
            stream.close();

            BitmapDrawable ob = new BitmapDrawable(getResources(), bitmap);
            button.setBackgroundDrawable(ob);

我有这样的xml设置:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="0dp"
android:paddingLeft="0dp"
android:paddingRight="0dp"
android:paddingTop="0dp"
tools:context="com.example.proba.MainActivity" >

<Button
    android:id="@+id/button1"
    android:layout_width="wrap_content"
    android:onClick="pickImage"
    android:layout_height="wrap_content"
    android:layout_alignParentRight="true"
    android:layout_alignParentTop="true"
    android:layout_marginRight="106dp"
    android:layout_marginTop="192dp"
    android:text="Button" />

提前谢谢。

1 个答案:

答案 0 :(得分:0)

您可以查看at this,因为您从图库中获取图片,您可以为您的根布局指定一个ID,然后设置背景,如rootlayout.setBackgroundDrawable(ob);