自定义背景形状
- 圆角按钮
在drawabale
中new一个drawable resource file:
将root element设置为shape,命名为button_2:
在button_2 xml中:
<solid
android:color="#DD2222"
/> //设置填充颜色
<corners
android:radius="15dp"
/> //设置圆角
在按钮的Layout中设置:
android:background="@drawable/button_2" //引用drawable
- 描边按钮
同样在drawable中声明一个shape
在button_3 xml中:
<stroke
android:width="3dp"
android:color="#DD2222"
/> //设置描边效果
<corners
android:radius="15dp"
/> //设置圆角
在按钮的Layout中设置:
android:background="@drawable/button_3" //引用drawable
圆角和描边按钮效果如下:
自定义按压效果
在drawable中new一个drawable resource file,root element设置为selector:
<item android:state_pressed="true"> //设置按下下去的效果
<shape>
<solid
android:color="#DF3131" //按压下的颜色(较深的红色)
/>
<corners
android:radius="10dp" //圆角
/>
</shape>
</item>
<item android:state_pressed="false">//设置未按压的效果
<shape>
<solid
android:color="#EB7A7A" //未按压的颜色(较浅的红色)
/>
<corners
android:radius="10dp" //圆角
/>
</shape>
</item>
点击事件
在activity中:
private Button mTrueButton; //声明按钮
mTrueButton=(Button)findViewById(R.id.true_button); //赋值
mTrueButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
checkAnswer(true); //点击下去期望发生的事情
}
});
tips
在Button中设置text的内容如果是英文,例如android:text=“Textview”
则默认为 显示大写,如下图:
若想要去除默认大写,使用属性:
android:textAllCaps=“false”
设置后的显示为:
(如有错误,欢迎指正~)