我刚刚开始Android开发,而我的第一个项目是计算器。 由于网格和约束布局存在一些问题,因此我选择了表格布局。下一步是将按钮的外观更改为圆形按钮->从而更改其背景。
当我使按钮没有背景时, the layout looks fine to me. 当我将按钮的背景更改为在网上找到的圆形按钮的预设,按钮本身以及表格disappears之后的每个按钮时。
我猜问题是布局重叠,但是我似乎找不到解决方案。
这是圆形按钮的代码
<?xml version="1.0" encoding="utf-8"?>
<ripple xmlns:android="http://schemas.android.com/apk/res/android"
android:color="?android:attr/colorControlHighlight">
<item android:id="@android:id/mask">
<shape android:shape="rectangle">
<solid android:color="@color/colorPrimary" />
<corners android:radius="40dp" />
</shape>
</item>
<item android:drawable="@drawable/rounded_button" />
</ripple>
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true" >
<shape android:shape="oval">
<solid android:color="@color/darkColor"/>
<!---<size android:width="120dp" android:height="120dp"/> -->
</shape>
</item>
<item android:state_focused="true">
<shape android:shape="oval">
<solid android:color="@color/primaryColor"/>
<!---<size android:width="120dp" android:height="120dp"/> -->
</shape>
</item>
<item >
<shape android:shape="oval">
<solid android:color="@color/primaryColor"/>
<!---<size android:width="120dp" android:height="120dp"/> -->
</shape>
</item>
</selector>
答案 0 :(得分:-1)
更改按钮的外观很常见,尤其是当您希望按钮在单击时看起来有所不同时。我在运行时以编程方式进行操作。
让我们说您想在单击按钮时更改按钮的外观。 假设该按钮被称为“ my-Button”作为您的按钮ID:
final Button my_button = findViewById(R.id.my_button);
my_button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// This changes the Button Image.
my_button.setBackgroundResource(R.drawable.my_new_button_image);
}
});
单击时将更改用于按钮的图像。 :)