【Java与智能设备】用户界面基础

xml中的单位一律采用dp

activity_main.xml

<?xml version="1.0" encoding="utf-8"?>
<!--
match_parent:和父元素一样    wrap_content:内容自适应
vertical:垂直排列     horizontal:水平排列
 -->
<LinearLayout android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    xmlns:android="http://schemas.android.com/apk/res/android" >

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

        <TextView
            android:background="#cccccc"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="用户:"
            />

        <!--    此时的match_parent不会占据  用户  的空间
            hint显示默认的内容-->
        <EditText
            android:hint="请输入"
            android:layout_width="match_parent"
            android:layout_height="wrap_content" />

    </LinearLayout>


    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content">
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="密码:"
            />
<!--    inputType="numberPassword限制输入的类型(number    -->
        <EditText
            android:hint="请输入"
            android:inputType="numberPassword"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"/>
    </LinearLayout>

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

<!-- 如果父元素LinearLayout中的orientation显示的是水平(horizontal)的,
那么下面的layout_gravity只能是垂直的调控(左右的调控不起作用),
    反之亦然
center会自动选择是水平居中还是垂直居中
gravity是控件内容相关的
-->
        <Button
            android:layout_gravity="center"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="注册:"/>

<!-- layout_margin是外边距,整个控件与控件外(父容器)的距离
     peddling是内边距,是控件内部的概念-->
        <Button
            android:id="@+id/btn_reg"
            android:layout_marginTop="20dp"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="注册:"/>

    </LinearLayout>

</LinearLayout>

MainActivity

package com.example.mydemo;

import androidx.appcompat.app.AppCompatActivity;

import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
       // setContentView(R.layout.activity_main);
      // Log.e("MainActivity","日志内容");//输出日志
        // 获取布局文件中视图控件的对象
     //  TextView tvText = findViewById(R.id.tv_hello);//传入的参数是int类型
       // tvText.setText("Hello Android!");


        //使用纯Java代码创建视图界面
        //Context 环境 上下文
//        TextView tvContent = new TextView(this);
//        tvContent.setText("我是使用Java代码创建的");
//        setContentView(tvContent);



        //处理按钮的点击事件
        Button btnReg = findViewById(R.id.btn_reg);
        //匿名内部类
        btnReg.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {//点击当前按钮会自动调用它
                Log.e("MainActivity","点击了按钮");


            }
        });

    }
}
发布了33 篇原创文章 · 获赞 5 · 访问量 685

猜你喜欢

转载自blog.csdn.net/u013140841/article/details/104536638