Android基础

文章详细介绍了Android中布局layout和视图view的概念,包括布局的创建方式(XML和Java代码)、常用容器视图(LinearLayout,RelativeLayout,FrameLayout等)以及ConstraintLayout。此外,还讲解了TextView、EditText、Button、ImageView等基本控件的使用,如自定义字体样式、跑马灯效果、控件属性设置等。
摘要由CSDN通过智能技术生成

Android中的布局layout与视图view

布局layout

定义:layout目录下一个个xml文件

新建布局界面

image-20230624192626677

image-20230624192706157

注意:文件名不能有大写字母;

image-20230624192741025

​ 文件命名,下划线分割

视图view

定义:xml文件里的一个个节点,对应页面上的元素

视图view的类型

①容器 ②子view(控件)

视图view的共有属性

  • layout_width
  • layout_height
  • id
  • gravity(控件内容的位置 right|center_vertical)
  • layouut_gravity(控件的位置,与布局有关)
  • background

创建布局和视图的两种方式

xml布局

image-20230624193909615

java代码

image-20230624194149453

Android中的常用容器视图

LinearLayout

线性布局:默认是horizontal

image-20230624195025140

【补充:dp、sp是安卓中设计的与设备无关的长度单位,其中sp常用于字体】

【补充:layout_weight:将水平或垂直方向上剩余空间与各个控件按比例分配

【补充:设置了orientation的值为vertical后,layout_gravity将垂直方向上无效,但可以作用于水平方向。

​ orientation为horizontal同理

RelativeLayout

相对布局

image-20230624195859057

【相对位置:layout_below=“@id/tv_content”,表示设置当前控件位于id为 “tv_content”‘ 下方,其他同类属性同理】

【如果在相对布局中没有设置各个控件的相对位置属性,则最下方声明的控件会覆盖其上方声明的控件(若控件大小均相等则会实现完全覆盖),可利用相对布局实现层级覆盖的界面效果】

FrameLayout

帧布局

image-20230624201813841

【格式化布局代码:Ctrl + Alt + L】

【图片自动撑满容器:scaleType=“centerCrop”】

【容器与容器之间可以嵌套,布局也可以相互嵌套】

image-20230624221110713

其他布局容器

不常用的/已经逐渐淘汰的

  • GridLayout
  • TableLayout

ConstraintLayout

定义:比较新的一个google推荐使用的布局容器

image-20230624221020509

使用

image-20230624221458948


image-20230624222505031

image-20230624223331217

Android中的常用控件

篇幅有限,只讲一些常用的基本控件的基本用法

TextView

image-20230625224146516

【Ctrl + Alt + O :一键删除导入却未使用的包】

【Ctrl + Shift + Enter: 光标定位至行末,并自动补全分号】

【Alt + Enter :自动生成一个本地变量】

【Ctrl + P: 查看方法参数提示】

【Ctrl + X: 可以实现删除一行】

应用自己的字体样式:

字体样式可以去网上下载,也可以直接应用自己电脑自带的字体资源:C盘–> Windows–>Fonts,然后引入到安卓中

image-20230625223548699

实现过程

image-20230625224019621

【解决Button上的英文全是大写:设置属性–textAllCaps = “false”】

实现跑马灯:

image-20230626175618278

需要这两个属性联动,且需给TextView获取焦点

image-20230626175716661

设置循环次数,以下方式设置为永远循环,可填写数值设置循环次数 如:XXX=“1”,只跑一次

image-20230626175845494

Java代码中的基本操作
  • 获取文字:getText()
  • 设置文字:setText(“hello world”)
  • 设置文字的样式(颜色,大小等)

EditText

image-20230626180642005

【看源码知:EditText是继承TextView的,TextView有的属性同样适用】

【Ctrl + D : 可以向下复制一行】

设置光标到文字末尾

image-20230626181114227

若果没有效果请加上让编辑框获取焦点的代码: etAccount.requestFocus();

Button

image-20230626181305127

【看源码知:Button是继承TextView的,TextView有的属性同样适用】

设置背景颜色

image-20230626181627343

若页面并没用更新成设置的颜色,解决如下

  • 方案一:更改安卓默认的主题,因为默认的主题设置了一些它认为比较好的样式,找到themes.xml文件

image-20230626181751750

image-20230626181818044

  • 方案二:使用兼容库

image-20230626182021038

ImageView

image-20230626201559581

【设置scaleType: centerCrop 属性,会使图片合适的缩放盛满容器】

java代码设置图片的src

image-20230626202055750

CheckBox

  • 记住密码 <----应用场景

image-20230626202339753

RadioButton、RadioGroup

image-20230626202716391

image-20230626202725222

RadioGroup继承线性布局,故而有orientation属性

控件的可见性

image-20230626202948567

image-20230626203152703

设置为invisible,只是控件在页面不可见,仍占据相应的空间

设置为gone,不仅页面无此控件,且该控件原来占有的空间也会释放掉【可利用这个属性实现一些效果】

image-20230626203103702

万水千山总是情,点赞再走行不行

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值