栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

UI基础入门(四)——UI基础控件

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

UI基础入门(四)——UI基础控件

一、基础控件(View)

1、TextView 处理文本内容控件

2、Button 被点击控件

3、mageView 处理图片内容控件

4、EditText 接收用户信息输入的控件

5、ProgressBar 进度条控件

二、通用属性

通用属性使用演示:




    

    

    

    

    

    

    

    

 

 

三、TextView 1、TextView的继承关系

2、能完成的效果

TextView类似于Swing中的JLabel

  • 对长文本进行显示处理
  • 支持Html代码
  • 内容有样式、链接的效果

 

3、常用属性
  • android:textSize 设置文字大小 (sp)
  • android:textColor 设置文字颜色
  • android:lineSpacingMultiplier 设置文字倍距(123)
  • android:singleLine 设置单行 (true or false)
  • android:ellipsize 设置省略号位置 (start or middle or end or none or marquee)
  • android:ellipsize="marquee" 跑马灯 需要设置下面属性
    • android:focusable="true"
    • android:focusableInTouchMode="true"
    • android:marqueeRepeatLimit="marquee_forever"

注意:ScrollView滚动,只能有一个TextView 如果有多个外边用布局包上

四、EditText

输入框, 接收信息输入

1、常用属性
  • android:inputType 输入类型
  • android:hint 提示信息
  • android:maxLength 长度限制

五、Button 1、Button注册点击事件的方法
  • 自定义内部类



    
package com.example.testapplication;

import androidx.appcompat.app.AppCompatActivity;

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

public class ButtonActivity extends AppCompatActivity {

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

        Button btn1 = findViewById(R.id.btn1);

        MyClickListener mc1 = new MyClickListener();

        // 点击事件:被点击时触发的事件
        btn1.setonClickListener(mc1);
    }

    class MyClickListener implements View.onClickListener {

        @Override
        public void onClick(View view) {
            // 控制台输出一条语句
            Log.e("TAG", "刚刚点击的按钮是注册了内部类监听对象的按钮");
        }
    }
}

  • 匿名内部类
// 匿名内部类
Button btn2 = findViewById(R.id.btn2);
btn2.setonClickListener(new View.onClickListener() {
    @Override
    public void onClick(View view) {
        Log.e("TAG", "刚刚点击的按钮是匿名内部类");
    }
});

  • 当前Activity去实现事件接口

  • 在布局文件中添加点击事件属性
package com.example.testapplication;

import androidx.appcompat.app.AppCompatActivity;

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

public class ButtonActivity extends AppCompatActivity implements View.onClickListener {

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

        Button btn1 = findViewById(R.id.btn1);

        MyClickListener mc1 = new MyClickListener();

        // 点击事件:被点击时触发的事件
        btn1.setonClickListener(mc1);

        // 匿名内部类
        Button btn2 = findViewById(R.id.btn2);
        btn2.setonClickListener(new View.onClickListener() {
            @Override
            public void onClick(View view) {
                Log.e("TAG", "刚刚点击的按钮是匿名内部类");
            }
        });

        //本类实现
        Button btn3 = findViewById(R.id.btn3);
        btn3.setonClickListener(this);
    }

    @Override
    public void onClick(View view) {
        Log.e("TAG", "刚刚点击的是本类实现");
    }

    class MyClickListener implements View.onClickListener {

        @Override
        public void onClick(View view) {
            // 控制台输出一条语句
            Log.e("TAG", "刚刚点击的按钮是注册了内部类监听对象的按钮");
        }
    }

    public void myClick(View v) {
        switch (v.getId()){
            case R.id.btn4:
                Log.e("TAG", "刚刚点击的按钮是在xml文件中绑定的按钮1");
                break;
            case R.id.btn5:
                Log.e("TAG", "刚刚点击的按钮是在xml文件中绑定的按钮2");
                break;
        }
        
    }
}



    

 

六、ImageView 图片

用来显示和控制图像的控件,可以对它进行放大,缩小,旋转等操作

1、常用属性
  • android:src 路径
  • android:background 背景

七、ProgressBar 进度条

进度条,默认情况下是圆形,没有刻度,只是一个不停旋转的动画效果。通过设置style, 可以显示传统的水平带刻度的进度条。

1、常用属性
  • style 设置风格?android:attr/progressBarStyleHorizontal 水平进度条
  • android:progress="" 设置进度
  • android:max="" 设置最大值 默认100
  • android:indeterminate="true" 设置进度条滚动
2、案例



    

    

    

    

    


package com.example.testapplication;

import androidx.appcompat.app.AppCompatActivity;

import android.os.Bundle;
import android.widget.ProgressBar;

public class ProgressBarActivity extends AppCompatActivity {

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

        final ProgressBar progressBar = findViewById(R.id.progress);

        // 在Android中,4.0以后是不能直接在线程中操作控件的
        // 进度条是个特里

        new Thread() {
            @Override
            public void run() {
                for (int i = 1; i < 100; i++) {
                    progressBar.setProgress(i);
                    try {
                        Thread.sleep(30);
                    } catch (InterruptedException e) {
                        e.printStackTrace();
                    }
                }
            }
        }.start();

    }
}

  坐得住板凳,耐得住寂寞,守得住初心!  

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/318425.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号