【安卓学习笔记】Android Studio第0课--MainActivity

陆陆续续、杂七杂八的自学了一段时间。总体确定了一个学习的方向及练习的方法:

找到了一个很简单的方法,现阶段都是学习,没有太多复杂的功能,主要还是熟悉Android开发中的常用控件、布局及事件监听和处理。没有任何基础再加上工作和一颗在远方的心,自学起来简直可以说比蜗牛还慢。不过慢就慢把,无所谓至少自己还没有彻底丢弃。不多说,上重点。

主要的思路就是在第0课创建一个最基本的Activity(就理解成一个界面把,下文都称作“界面”好了)。在基础出的界面(MainActivity)中创建每次学习和练习的按键,通过点击按键进入每次学习和练手的界面,如下图所示:


下面贴上代码:

package com.example.urien.secondapp;

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

public class MainActivity extends AppCompatActivity {

    //1.声明控件
    private Button bt_Lesson1;
    private Button bt_lesson2;
    private Button bt_lesson3;
    private Button bt_lesson4;

    @Override
    protected void onCreate(Bundle savedInstanceState) {//onCreate用来创建一个activity
        super.onCreate(savedInstanceState);
        //setContentView方法是在MainActiviy中显示activity_main中所定义的内容
        setContentView(R.layout.activity_main);

        //2.找到控件
        bt_Lesson1 = findViewById(R.id.bt_lesson1);
        bt_lesson2 = findViewById(R.id.bt_lesson2);
        bt_lesson3 = findViewById(R.id.bt_lesson3);
        bt_lesson4 = findViewById(R.id.bt_lesson4);
        //4.生成监听器对象
        setListener();
    }

    private void setListener(){
        OnClick onclick = new OnClick();
        bt_Lesson1.setOnClickListener(onclick);
        bt_lesson2.setOnClickListener(onclick);
        bt_lesson3.setOnClickListener(onclick);
        bt_lesson4.setOnClickListener(onclick);
    }

    //3.定义一个类,实现监听器接口
    private class OnClick implements View.OnClickListener{
        @Override
        public void onClick(View v) {
            Intent intent = null;
            switch(v.getId()){//跳转相应avtivyty实现方法
                case R.id.bt_lesson1:
                    intent = new Intent(MainActivity.this,Lesson1_Activity.class);
                    break;
                case R.id.bt_lesson2:
                    intent = new Intent(MainActivity.this,Lesson2_Activity.class);
                    break;
                case R.id.bt_lesson3:
                    intent = new Intent(MainActivity.this,Lesson3_Activity.class);
                    break;
                case R.id.bt_lesson4:
                    intent = new Intent(MainActivity.this,Lesson4_Activity.class);
                    break;
            }
            startActivity(intent);
            MainActivity.this.finish();
        }
    }
}

这里主要的知识点也不多,一个按键从无到有到事件监听处理主要分了四个步骤,代码中也标了注释

        * 1.获取代表控件的对象
        * 2.定义一个类,实现监听器接口
        * 3.生成监听器对象

        * 4.为控件绑定监听器对象

上述的代码我为了简便把所有的按键监听绑定在了一个监听器上,这样方便以后添加和修改代码,也可以用单独的方式进行绑定,如下代码:

    //1.声明控件
    private Button bt_Lesson1;
    @Override
    protected void onCreate(Bundle savedInstanceState) {//onCreate用来创建一个activity
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);//setContentView方法是在MainActiviy中显示activity_main中所定义的内容

        //2.找到控件
        bt_Lesson1 = findViewById(R.id.bt_lesson1);
        //4.生成监听器对象
        bt_Lesson1.setOnClickListener(bt_lesson1_listener);
    }

    //3.定义一个类,实现监听器接口
    Button.OnClickListener bt_lesson1_listener = new Button.OnClickListener(){
        @Override
        public void onClick(View v) {
            //以下三行代码是跳转avtivyty实现方法
            Intent intent = new Intent(MainActivity.this,Lesson1_Activity.class);
            startActivity(intent);
            MainActivity.this.finish();
        }
    };
这样的话一个还好,多了写起来就麻烦,毕竟存在很多的重复代码,另外好处就是可以设置不同类型的监听器,比如说后面学到CheckBox就有多种监听器,当然同一类型的监听器最好还是绑定在一块,代码看着舒服。


By Urien 2018年5月6日 14:53:26

猜你喜欢

转载自blog.csdn.net/qq997758497/article/details/80214361