android开发--button的用法

一、设置button的样式的三种方法

1、直接在app/res/layout/activity_main.xml设置样式

 <Button
        android:id="@+id/button"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:textSize="20sp"
        android:background="#ff0000"
        android:textAllCaps="false"
        android:textColor="#0000ff"
        android:text="Button" />

 2、在app/res/values/styles.xml设置按钮样式并应用

<style name="buttonStyle">
        <item name="android:textSize">20sp</item>
        <item name="android:textColor">#0000ff</item>
        <item name="android:background">#ff0000</item>
        <item name="textAllCaps">false</item>
</style>

   在activity_main.xml中应用定义好的style

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

 3、设置按钮为圆角按钮

如图:

  在app/res/drawable下右键,New->Drawable Resource File(Root element=shape)新建button_round.xml(文件名不能有大写字母)

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle">
    <solid android:color="#D0104C"/><!--按钮的填充色-->
    <corners android:radius="10dp"/><!--按钮的圆角弧度-->
    <padding
        android:bottom="10dp"
        android:left="10dp"
        android:right="10dp"
        android:top="10dp"/><!--按钮的内容与边框的间距-->
    <stroke
        android:color="#DCB879"
        android:width="2dp"/><!--描边的粗细和颜色-->
    <gradient
        android:startColor="#FEDFE1"
        android:endColor="#EB7A77"
        android:type="linear"
        android:angle="270"/><!--渐变[渐变效果会覆盖填充色]-->
</shape>

   在activity_main.xml的button标签里加上圆形背景

android:background="@drawable/button_round"

 二、为按钮加上点击事件

1、button和textview  

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);//一个activity对应一个布局xml
        Button mybutton=findViewById(R.id.button);//通过id得到布局里的button
        mybutton.setOnClickListener(new View.OnClickListener(){//为按钮设置监听器并重写点击事件方法
            @Override
            public void onClick(View v) {
                TextView mytextView=findViewById(R.id.textView);//通过id得到布局里的TextView
                mytextView.setText("这是一个可点击的按钮");//textView是一个可以显示文字但是不能让用户输入的控件
            }
        });
    }
}

 

2、button和Toast

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);//一个activity对应一个布局xml
        Button mybutton=findViewById(R.id.button);//通过id得到布局里的button
        mybutton.setOnClickListener(new View.OnClickListener(){//为按钮设置监听器并重写点击事件方法
            @Override
            public void onClick(View v) {
                Toast mytoast= Toast.makeText(MainActivity.this,"这是一个可点击的按钮",Toast.LENGTH_LONG);
                mytoast.show();//Toast是一个可以短暂显示的提醒消息框,Toast.LENGTH_LONG为显示时间
            }
        });
    }
}
posted @ 2020-05-14 22:46  ECHO_01  阅读(543)  评论(0)    收藏  举报