单击按钮时将布局背景更改为另一个图像

时间:2014-10-11 16:47:12

标签: android

当我想将背景图像更改为另一张图像时我无法

btn = (Button)findViewById(R.id.button1);

btn.setOnClickListener(new View.OnClickListener() {

    @Override
    public void onClick(View arg0) {
        relativeLayout.setBackgroundResource(R.drawable.bbbn);
    }
});

1 个答案:

答案 0 :(得分:0)

您遇到的问题或错误是什么?您还应该描述您的问题和错误。

这很简单,似乎你想在按钮点击时更改相对布局的背景图像。

以下是活动布局

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
     android:layout_width="match_parent"
     android:layout_height="match_parent" >

<Button
    android:id="@+id/btn"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:text="Button" >
</Button>

<RelativeLayout
    android:id="@+id/rl"
    android:layout_width="100dp"
    android:layout_height="100dp"
    android:layout_below="@+id/btn"
    android:background="@drawable/default_image_name" >
</RelativeLayout>

</RelativeLayout>

以下是活动代码

public class MainActivity extends Activity {

Button button;
RelativeLayout layout;

@Override
protected void onCreate(Bundle savedInstanceState) {
    // TODO Auto-generated method stub
    super.onCreate(savedInstanceState);
    setContentView(R.layout.layout_main);
    button = (Button) findViewById(R.id.btn);
    layout = (RelativeLayout) findViewById(R.id.rl);

    button.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub

            // Give image name that you want to show on button click
            layout.setBackgroundResource(R.drawable.second_image_name);
        }
    });
}
}

注意:也将图像放在mdpi文件夹中。