安卓开发-Android Studio-前端-设置

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/monster_ayb/article/details/82118547

              安卓开发-Android Studio-前端-设置按钮和点击事件

1.新建一个ButtonActivity文件 

.

2.在MainActivity中声明

package com.example.ayb.helloworld;

import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;

public class MainActivity extends AppCompatActivity {

    private Button mBtnTextView;
    private Button mBtnButton;//声明添加的Button
    private Button mBtnEditText;
    private Button mBtnRadioButton;
    private Button mBtnCheckBox;
    private Button mBtnImageView;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        mBtnTextView = findViewById(R.id.btn_textview);
        mBtnButton = findViewById(R.id.btn_button);//找到按钮
        mBtnEditText = findViewById(R.id.btn_edittext);
        mBtnRadioButton = findViewById(R.id.btn_radiobutton);
        mBtnCheckBox = findViewById(R.id.btn_checkbox);
        mBtnImageView = findViewById(R.id.btn_imageview);
        setOnClickListener();
    }
    private void setOnClickListener(){
        OnClick onClick = new OnClick();
        mBtnTextView.setOnClickListener(onClick);
        mBtnRadioButton.setOnClickListener(onClick);
        mBtnEditText.setOnClickListener(onClick);
        mBtnButton.setOnClickListener(onClick);//设置点击事件
        mBtnCheckBox.setOnClickListener(onClick);
        mBtnImageView.setOnClickListener(onClick);
    }

    private class  OnClick  implements View.OnClickListener{

        @Override
        public void onClick(View v){
            Intent intent = null;
            switch (v.getId()){
                case R.id.btn_textview:
                    intent = new Intent(MainActivity.this,TextViewActivity.class);
                    break;
                case R.id.btn_button:
                    intent = new Intent(MainActivity.this,ButtonActivity.class);
                    break;
                case R.id.btn_edittext:
                    intent = new Intent(MainActivity.this, EditTextActivity.class);
                    break;
                case R.id.btn_radiobutton:
                    intent = new Intent(MainActivity.this, RadioButtonActivity.class);
                    break;
                case R.id.btn_checkbox:
                    intent = new Intent(MainActivity.this, CheckBoxAcitivity.class);
                    break;
                case R.id.btn_imageview:
                    intent = new Intent(MainActivity.this, ImageViewActivity.class);
                    break;
            }
            startActivity(intent);
        }
    }
}

先设置个背景

在Drawable中设置bg_btn4.xml 

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

    <item android:state_pressed="true"> //被点击
        <shape>
            <solid android:color="#aa6600"/>
            <corners android:radius="5dp"/>
        </shape>
    </item>
    <item android:state_pressed="false">未被点击
        <shape>
            <solid android:color="#ff9900"/>
            <corners android:radius="5dp"/>
        </shape>
    </item>
</selector>

3.在ButtonActivity中设置若干个按钮

        android:id="@+id/btn_2"   设置id
        android:layout_width="match_parent"  匹配父控件
        android:layout_height="wrap_content"  根据内容匹配大小
        android:layout_below="@+id/btn_1"    由于是相对布局 所以设置在ID为btn_1的按钮下面
        android:text="按钮2"  设置按钮上显示的内容
        android:textColor="@color/colorAccent"  设置按钮上显示的内容的颜色
        android:layout_marginTop="10dp"  相对布局设置与其他控件的间距
        android:textSize="20sp"  设置按钮上显示的内容的字体大小
        android:background="@drawable/bg_btn4"  设置按钮背景样式

<?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"
    android:padding="15dp"
    >

    <Button
        android:id="@+id/btn_1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="按钮1"
        android:textSize="20sp"
        android:textColor="#0066ff"
        android:background="@drawable/bg_btn2"
        />
    <Button
        android:id="@+id/btn_2"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_below="@+id/btn_1"
        android:text="按钮2"
        android:textColor="@color/colorAccent"
        android:layout_marginTop="10dp"
        android:textSize="20sp"
        android:background="@drawable/bg_btn2"
        />

    <Button
        android:id="@+id/btn_3"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="120dp"
        android:background="#ff9900"
        android:text="按钮3"
        android:textColor="@color/colorAccent"
        android:textSize="20sp" />
    <Button
         android:id="@+id/btn_4"
        android:layout_width="match_parent"
         android:layout_height="wrap_content"
        android:layout_below="@id/btn_3"
        android:text="按钮4"
        android:textSize="20sp"
        android:layout_marginTop="20dp"
        android:onClick="showToast"
        android:background="@drawable/bg_btn4"
        />
    <TextView
        android:id="@+id/tv_1"
        android:layout_width="match_parent"
        android:layout_height="65dp"
        android:textSize="20sp"
        android:textColor="#aa1122"
        android:text="测试文字1"
        android:background="@drawable/bg_btn4"
        android:layout_below="@id/btn_4"
        android:layout_marginTop="20dp"
        android:gravity="center"

        />


</RelativeLayout>

按钮显示界面如下

设置按钮监听事件

在ButtonActivity中的代码如下

public class ButtonActivity extends AppCompatActivity {

    private Button mBtn3; //声明按钮
    private TextView mTv1; //声明文本框

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_button);
        mBtn3 = findViewById(R.id.btn_3);//找到按钮
        mBtn3.setOnClickListener(new View.OnClickListener(){

            @Override
            public void onClick(View v){
                Toast.makeText(ButtonActivity.this,"btn3被点击了",Toast.LENGTH_SHORT).show();//设置输出结果
            }
        });
        mTv1 = findViewById(R.id.tv_1);//找到文本框
        mTv1.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                Toast.makeText(ButtonActivity.this,"tv_1被点击了",Toast.LENGTH_SHORT).show();//设置输出结果
            }
        });
    }
    public void showToast(View view){
        Toast.makeText(this,"再点一次",Toast.LENGTH_SHORT).show();//设置监听显示内容
    }
}

效果如下

猜你喜欢

转载自blog.csdn.net/monster_ayb/article/details/82118547