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

Andriod 开发的基本控件和属性

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

Andriod 开发的基本控件和属性

控件一:TextView      【2021最新版】Android(安卓)开发零基础入门课程【全套】(由小米、阿里、腾讯、爱奇艺一线大厂老师打造)_哔哩哔哩_bilibili

  从字面意思上看,TextView就是文本视图,只是用来显示文字的。在iOS中就叫做标签,即为UILabel。要想在Activity中显示TextView, 我们需要在相应的布局文件,也就是Activity对应的layout.xml文件去添加相应的控件标签。这些xml标签可以确定控件的位置,大小,颜色等属性。下方是在Activity中显示一个TextView。

基本的属性

android:layout_width=""

android:layout_height=""

android:text=""

android:textColor=""

android:textStyle=""字体的风格

android:textSize=""字体的大小

android:background=""textView背景颜色

android:gravity=""内容的位置或者布局

给TextView的相关内容设置阴影

android:shadowColor="#FF0000"设置阴影的颜色

 android:shadowDx="3"    设置阴影在X轴的偏移程度

android:shadowRadius="3.0"设置阴影的宽度

android:shadowDy="2"  设置阴影在Y轴的偏移程度

跑马灯的相关效果的实现:

android:singleLine="true"  内容单行显示
android:focusable="true"    是否获取焦点
android:focusableInTouchMode="true"   触摸条件下获取焦点
android:ellipsize="marquee"在哪里省略文本
android:marqueeRepeatLimit="marquee_forever"  字幕动画重复的次数
android:clickable="true"

控件二:EditText    EditText

     接下来要为Activity添加一个输入框,在Android中输入框的类型和标签都是EditText。iOS中的输入框就是UITextField了,其实两者用法类似,其功能都是接收用户输入的数据的。下方是其xml布局方式.

hint属性:设置提示字

textColorHint:设置提示字的颜色

textColor:输入字的颜色

maxLine:最大可以输入的行数

 android:drawableLeft=""在输入框的左边添加图片

 android:padding=""设置内容与边距的距离

android:background=""背景颜色

android:inputType="text"输入的数据类型

控件三:Button

      在Android中的按钮就叫Button, 而在iOS中则叫UIButton。其两者的用法极为相似。还是和上面类似,我们需要在Activity对应的布局文件layout.xml中添加一个Button, 具体的xml代码如下所示。

android:color="#000000"

android:state_pressed="false"

android:state_checked="true"控件是否被勾选

android:state_focused="true"是否获得焦点

android:state_enabled="true" 空间是否可用

android:state_selected="true" 空间是否被选择,针对的是有滚轮的情况下

按钮长安变色的实现过程:

selector xmlns:android="http://schemas.android.com/apk/res/android">

    

 android:color="@color/purple_700"      android:state_pressed="true"表示长按按钮的时候按钮颜色变为什么色

android:color="@color/purple_700"      android:state_pressed=“false" 不按时按钮的颜色为什么色

三大事件:点击事件  、长按事件、触摸事件。

声明控件

得到控件id

创立相对应的事件

  @Override
    protected void onCreate(Bundle savedInstanceState) {
        Button but1;
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main_button);
        but1 = findViewById(R.id.button11);
       but1.setonClickListener(new View.onClickListener() {
               @Override
                public void onClick(View view) {
        //点击事件
                }
            });
         but1.setonLongClickListener(new View.onLongClickListener() {
             @Override
             public boolean onLongClick(View view) {
                 //长按事件
                 return false;
             }
         });
       but1.setonTouchListener(new View.onTouchListener() {
           @Override
           public boolean onTouch(View view, MotionEvent motionEvent) {
               return false;
               //触摸事件
           }
       });
    }

控件四:AlterDialog(警告框)

 Toast用来显示提示内容,而AlterDialog是警告框,上面可以有一些控件,比如按钮等。AlterDialog其实就是iOS中的AlterView(在iOS8后有增加了UIAlterController)。下面的代码是初始化AlterDialog并且进行显示的代码,下方的代码是放在点击按钮所触发的方法当中。

(1)AlterDialog通过AlterDialog的Builder进行创建,在创建的时候会指定该AlterDialog在那个Activity上进行显示。

(2)通过setTitle方法给AlterDialog设置标题,通过setMessage给AlterDialog设置内容。

(3)setCancelable()方法,我们在这儿设置的时false,表示弹出的AlterDialog在用户点击返回键是不消失,该值默认是true。

(4)setPositiveButton()方法是设置点击“确定”按钮时的事件, setNegativeButton是设置点击“取消”按钮的事件。通过Toast来展示事件的点击。

AlterDialog.Builder builer = new AlterDialog.Builder(this);首先进行创建

通过setTitle方法给AlterDialog设置标题

通过setMessage给AlterDialog设置内容。

setPositiveButton()方法是设置点击“确定”按钮时的事件, setNegativeButton是设置点击“取消”按钮的事件。通过Toast来展示事件的点击。

 public void onlick(View view) {
        alertDialog.Builder builder = new alertDialog.Builder(this);
        builder.setIcon(R.mipmap.ic_launcher)
                .setTitle("我是对话框")
                .setMessage("今天天气这么样?")
                .setPositiveButton("确定", new DialogInterface.onClickListener() {
                    @Override
                    public void onClick(DialogInterface dialogInterface, int i) {
                        Log.e(TAG, "onClick:点击了确定");

                    }
                })
                .setNegativeButton("取消", new DialogInterface.onClickListener() {
                    @Override
                    public void onClick(DialogInterface dialogInterface, int i) {
                        Log.e(TAG, "onClick: 点击了取消" );
                    }
                })
                .setNeutralButton("中间", new DialogInterface.onClickListener() {
                    @Override
                    public void onClick(DialogInterface dialogInterface, int i) {
                        Log.e(TAG, "onClick:点击了中间 " );
                    }
                })
                .create().show();
    }

控件五:ProgressBar(进度条)

        进度条,就是平时下载东西常见到表示下载进度的控件。ProgressBar和iOS中的     UIProgressView类似,用法也是非常类似的。首先需要在Activity对应的Xml文件中对ProgressBar进行布局和样式的设定。下方是ProgressBar的布局和样式。

xml:

 

控件六 :Notification

 1.NotificationChannel channel

通知的渠道,Android8.0引入了通知的渠道,其允许您为要现实的每种通知类型创建用户可自定义的渠道。

NotificationManager.importANCE_HIGH 开启通知,会弹出,发出提示声,状态栏中显示

NotificationManager.importANCE_NONE关闭通知

NotificationManager.importANCE_MIN   开启通知,不会弹出,但没有提示声,状态栏中无显示

NotificationManager.importANCE_LOW  开启通知,不会弹出,不发出提示音,状态栏中显示

NotificationManager.importANCE_DEFAULT   开启通知,不会弹出,发出提示音,状态栏中显示

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O){
            NotificationChannel channel = new NotificationChannel("jiang", "测试通知", NotificationManager.importANCE_MIN);
             manager.createNotificationChannel(channel);
        }

2.创建Notification Buider:

创建Notifiction时,可以用NotificationCompat.Builder对象来指定Notification的UI内容,一个NotificationCompat.Builder对象至少包含以下内容,

setColor 设置小图标的颜色

setLargeIcon设置大图标

setWhen  设置通知的时间

setContentIntent(pendingIntent intent)设置点击事件后的跳转意图

setContentIntent使用方法:

Intent intent = new Intent(this, MainActivity.class);
PendingIntent pendingIntent = PendingIntent.getActivity(this,0,intent,0);

notification= new NotificationCompat.Builder(this,"jiang")
        .setContentTitle("通知标题")
        .setSubText("世界这么大,我想去看看")
        .setSmallIcon(R.drawable.abc_vector_test)
        .setContentIntent(pendingIntent)
        .build();

setAutoCancel()设置点击事件后自动清除通知

notification= new NotificationCompat.Builder(this,"jiang")
                .setContentTitle("通知标题")
                .setSubText("世界这么大,我想去看看")
                .setSmallIcon(R.drawable.abc_vector_test)
                .setColor()
                .setLargeIcon()
                .setAutoCancel()
                .setWhen()
                .setContentIntent(PendingIntent intent)
                .build();

注意:在使用setSmallIcon()设置小图标的时候

          android从5.0系统开始,对于通知栏图标的设计进行了修改 , 现在Google要求,所有应用层的通知图标,应该只使用alpha图层,而不能使用包括RGB图层。
3.发送:

manager.notify(1 ,notification);

控件七:IamgeView

android:scaleType="centerInside"

center相关的属性和fit相关的属性。具体如下

android:scaleType="centerInside"  最终目的是将图片放在imageView中,不管是放大和缩小

android:scaleType="centerCrop"

android:scaleType="fitstart"  保持图片的宽高比缩放图片,知道较长的边和imageView的边长相等,并且把缩放后的图片放在左上角。

android:scaleType="fitend"  保持图片的宽高比缩放图片,知道较长的边和imageView的边长相等,并且把缩放后的图片放在右下角。

android:scaleType="fitcenter"保持图片的宽高比缩放图片,知道较长的边和imageView的边长相等,并且把缩放后的图片放在中间。

android:scaleType="fitXY" 把图片的横纵都进行放缩,知道图片填充满整个image,图片的得长宽高比例可能被改变。

android:maxHeight="200dp" android:maxWeight="200dp"

android:adjustViewBounds="true

控件八:Toolbar控件

layout-width 设置宽度

layout-height 设置高度

background  设置背景颜色

APP:title  设置标题

APP:subtitle  设置子标题

APP:subtitleTextColor设置子标题的颜色

相关的属性也可以在java代码块中进行设置

注意导包问题:

android:layout_width="match_parent"
     android:layout_height="wrap_content"
     android:background="#0CFFFF"
     app:navigationIcon=""
     app:title="标题"
     app:titleTextColor="#000000"
     app:subtitle="@string/text_1"
     app:subtitleTextColor="#FF3300"
     app:logo=""
     android:id="@+id/toolBar"






java块:
 Toolbar toolbar = findViewById(R.id.toolBar);

             toolbar.setNavigationOnClickListener(new View.onClickListener() {
                 @Override
                 public void onClick(View view) {
                     Log.e("loe", "onClick: toolbar事件" );
                 }
             });

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

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

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