button

贴代码:

activity_main.xml中代码:

<?xml version="1.0" encoding="utf-8"?>
<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:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    android:paddingBottom="@dimen/activity_vertical_margin" tools:context=".MainActivity">

    <ScrollView
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:id="@+id/scrollView"
        android:layout_alignParentTop="true"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true" >

        <LinearLayout
            android:orientation="vertical"
            android:layout_width="match_parent"
            android:layout_height="match_parent">

            <Button
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:text="第一个button,从源代码里注册onClick事件"
                android:id="@+id/button" />

            <Button
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:text="第二个button,从xml文件里注册onClick事件"
                android:id="@+id/button2"
                android:onClick="onClick"/>

            <Button
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="New Button"
                android:id="@+id/button3"
                android:background="@drawable/button_seletor"
                android:layout_gravity="center_horizontal" />

            <TextView
                android:layout_width="match_parent"
                android:layout_height="35dp"
                android:text="可多选"
                android:id="@+id/textView" />

            <LinearLayout
                android:orientation="horizontal"
                android:layout_width="match_parent"
                android:layout_height="44dp">

                <CheckBox
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:text="男"
                    android:id="@+id/checkBox"
                    android:checked="false" />

                <CheckBox
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:text="女"
                    android:id="@+id/checkBox2"
                    android:checked="false" />
            </LinearLayout>

            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:textAppearance="?android:attr/textAppearanceLarge"
                android:text="单选"
                android:id="@+id/textView2" />

            <RadioGroup
                android:layout_width="fill_parent"
                android:layout_height="61dp"
                android:id="@+id/radioGroup">

                <RadioButton
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:text="男"
                    android:id="@+id/radioButton"
                    android:checked="false" />

                <RadioButton
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:text="女"
                    android:id="@+id/radioButton2"
                    android:checked="false" />

            </RadioGroup>

            <ToggleButton
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="New ToggleButton"
                android:id="@+id/toggleButton"
                android:textOn="关闭"
                android:textOff="打开"/>

        </LinearLayout>
    </ScrollView>

</RelativeLayout>

button_selector.xml中的代码:

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true" android:drawable="@drawable/button_selector1" /> //如果按下,则显示<span style="font-family: Arial, Helvetica, sans-serif;">drawable中的button_selector1图片,下一行同理</span>
<item android:state_enabled="true" android:drawable="@drawable/button_selector2"/>

</selector>
MainActivity中的代码:

package com.example.hailang.button;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.CheckBox;
import android.widget.CompoundButton;
import android.widget.RadioGroup;
import android.widget.Toast;
import android.widget.ToggleButton;

public class MainActivity extends AppCompatActivity {

    private Button btn1;
    private Button btn_selector;
    private CheckBox  mbtn;
    private CheckBox wmbtn;
    private RadioGroup sex;
    private ToggleButton mToogglebt;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        btn1 = (Button)findViewById(R.id.button);
        btn1.setOnClickListener(new View.OnClickListener() {
            public void onClick(View v) {
                Toast.makeText(MainActivity.this, "第一个button事件已经触发", Toast.LENGTH_SHORT).show();
            }
        });
        btn1.setOnLongClickListener(new View.OnLongClickListener() {  //长按button
            public boolean onLongClick(View v) {
                Toast.makeText(MainActivity.this, "第一个button长按事件已经触发", Toast.LENGTH_SHORT).show();
                return false;
            }
        });

        btn_selector = (Button) findViewById(R.id.button3);  //按下和放开两个不同状态下的图片不同,能够看到按动的效果
        btn_selector.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Toast.makeText(MainActivity.this,"第三个button事件已经触发", Toast.LENGTH_SHORT).show();
            }
        });

        mbtn = (CheckBox )findViewById(R.id.checkBox);  //多项选择
        wmbtn = (CheckBox)findViewById(R.id.checkBox2);
        mbtn.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {  
            @Override
            public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
                Toast.makeText(MainActivity.this,"选择男性:" + isChecked, Toast.LENGTH_SHORT).show();
            }
        });
        wmbtn.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
            @Override
            public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
                Toast.makeText(MainActivity.this,"选择女性:" + isChecked, Toast.LENGTH_SHORT).show();
            }
        });

        sex = (RadioGroup)findViewById(R.id.radioGroup);     //单项选择
        sex.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
            @Override
            public void onCheckedChanged(RadioGroup group, int checkedId) {
                if (checkedId == R.id.radioButton)
                    Toast.makeText(MainActivity.this, "当前被选中的是男", Toast.LENGTH_SHORT).show();
                else
                    Toast.makeText(MainActivity.this, "当前被选中的是女", Toast.LENGTH_SHORT).show();
            }
        });

        mToogglebt = (ToggleButton)findViewById(R.id.toggleButton);   //开关
        mToogglebt.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
            @Override
            public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
                if (isChecked)
                    Toast.makeText(MainActivity.this, "已打开", Toast.LENGTH_SHORT).show();
                else
                    Toast.makeText(MainActivity.this, "已关闭", Toast.LENGTH_SHORT).show();
            }
        });
    }

    public void onClick(View v)
    {
        Toast.makeText(this, "第二个button事件已经触发", Toast.LENGTH_SHORT).show();
    }
}



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值