08 2022 档案
摘要:虽然线性布局既能在水平方向排列,也能在垂直方向排列,但它不支持多行多列的布局方式,只支持单行(水平排列)或单列(垂直排列)的布局方式。若要实现类似表格那样的多行多列形式,可采用网格布局GridLayout。 网格布局中的下级视图按照从左往右,从上到下的顺序排列 通过属性rowCount设置行数 通过
阅读全文
摘要:我们在使用Java语言时,经常会出现空指针异常NullPointerException。Kotlin基于过往语言设计的经验对这一问题进行了改良,把运行时可能出现的null问题,以编译时错误的方式,提前在编译期强迫我们重视起来,而不是等到运行时报错,防患于未然,提高我们程序的健壮性。 Kotlin语言
阅读全文
摘要:有两种滚动视图 垂直方向上的滚动视图ScrollView,需要将宽度设置为match_parent,或固定大小,高度设置为wrap_content 水平方向上的滚动视图HorizontalScrollView,需要将高度设置为match_parent,或固定大小,宽度设置为wrap_content
阅读全文
摘要:Button由TextView派生而来,它们的区别有以下几点 Button有默认的按钮背景,TextView默认无背景 Button中的文本默认居中显示,TextView中的文本默认靠左显示 Button中文本默认英文字母都大写,TextView文本中英文字母保持原状 Button中新增的两个属性
阅读全文
摘要:按钮长按点击监听器,通过setOnLongClickListener()方法设置,当按钮被长按超过500ms时,会触发此点击事件。 xml文件 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://sch
阅读全文
摘要:按钮点击事件 方式一:在xml文件中设置Button的属性onClick,属性值是一个方法名,当点击按钮时就会执行java代码中的这个方法,以此来处理点击事件。 xml文件 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:andr
阅读全文
摘要:kotlin语言区分可空类型和非空类型,并且不允许可空类型值调用函数,除非主动接手空安全管理 方式一:安全调用操作符"?." 方式二:带let函数的安全调用操作符"?.let{ }" let函数说明: 1.是调用的let函数,就把它作为参数在函数体中使用 2.let函数的返回值是匿名函数体最后一行语
阅读全文
摘要:函数 函数头 函数参数 Unit函数 匿名函数和隐式返回 函数类型 匿名函数参数和it关键字 匿名函数的类型推断 定义参数是函数的函数 函数内联 函数引用 函数类型作为返回类型 闭包
阅读全文
摘要:相对布局中,下级视图位置由其他视图决定 决定下级视图位置的参照物有两种 以当前视图的平级视图为参照物 以当前视图的上级视图(即当前视图所在的RelativeLayout)为参照物 如果不设定下级视图的参照物,那么下级视图默认显示在RelativeLayout内部的左上角。 相对位置的属性取值 相对位
阅读全文
摘要:线性布局中的下级视图有两种排列方式 当orientation属性为horizontal时,线性布局中的下级视图在水平方向上从左往右排列 当orientation属性为vetical时,线性布局中的下级视图在垂直方向上从上往下排列 线性布局的权重 概念:线性布局的权重,用来表示线性布局中各视图所占比例
阅读全文
摘要:视图提供了两种通用属性来设置间距,它的所有子类都具有这两种属性(即各类布局和控件) 1.layout_margin(外间距):用来设置当前视图与外部视图(包括上级视图和平级视图)的距离。 同时还提供了上下左右四个方向上的距离属性:layout_marginTop,layout_marginBotto
阅读全文
摘要:把函数作为参数传递给其他函数,除了使用lambda表达式,Kotlin还提供了其他方法,也可以使用函数引用。使用函数引用可以把具名函数转换成值参,凡是使用lambda表达式的地方,都可以使用函数引用。
阅读全文
摘要:例: 简略写法 如果一个函数使用了匿名函数作为参数,并且此匿名函数排在参数的最后或者只有这一个参数时,那么包住lambda表达式的括号可以省略
阅读全文
摘要:当给一个变量显示赋值一个匿名函数时,就无须定义变量的类型了,编译器会自动推断 无参数的匿名函数类型推断:(只需要推断返回值类型) 带参数的匿名函数类型推断:(既要推断参数个数和类型,还要推断返回值类型)
阅读全文
摘要:通过layout_gravity属性可以设置当前视图在上级视图中的对齐方式 通过gravity属性可以设置下级视图在上级视图中的对齐方式 这两个属性的取值可以是:top,bottom,left,right,也可以用"|"隔开同时取两个值
阅读全文
摘要:视图家族有四个成员:View,ViewGroup,布局,控件 视图包括各类布局和控件,因为不管是布局还是控件,都是由视图基类View派生而来的,他们继承了View的所有属性。 视图组ViewGroup既是View的子类同时也是各种布局的基类,布局可以容纳其他视图,而控件不行,正是由于ViewGrou
阅读全文
摘要:和具名函数一样,匿名函数可以不带参数,也可以带一个或多个任意类型的参数,需要带参数时,参数类型放在匿名函数的类型定义中,参数名放在函数定义中。 例如: 当定义只有一个参数的匿名函数时,可以使用it关键字来表示参数名。定义两个以上参数时,it关键字就不能用了 例如:
阅读全文
摘要:在Kotlin中像字符串String,整型Int一样,“函数”也是一种类型,叫做函数类型。函数具体是哪种类型,由传入的参数和返回值类型决定。匿名函数可以赋值给类型是函数的变量,变量的类型就是匿名函数的类型。 例如: 给变量赋值: 直接赋值
阅读全文
摘要:定义时不取名字的函数,我们称之为匿名函数,匿名函数通常整体传递给其他函数,或者从其他函数返回 有了匿名函数我们可以给标准库里的内置函数(标准函数)制定特殊规则 例如: 运行结果为: 和具名函数不一样,匿名函数不需要return关键字来返回数据,匿名函数会隐式或自动返回函数体最后一行语句的结果
阅读全文
摘要:不是所有函数都有返回值,Kotlin中没有返回值的函数叫Unit函数,也就是说它的返回值类型是Unit 例如: 运行结果为:
阅读全文
摘要:一、默认值参 如果不打算传入值参,可以预先给参数指定默认值 例如: 1.函数调用时不传参使用默认值 运行结果为: 2.函数调用时传参,会覆盖指定的默认值 运行结果为: 二、具名函数参数 如果使用命名值参,参数传递时就不用考虑参数顺序 例如:
阅读全文
摘要:声明函数 注:具名函数没有返回值类型推断,如果没有返回值,类型为Unit,可以省略不写。如果有返回值,必须显示给出。
阅读全文
摘要:Kotlin字符串模板支持在字符串的引号内使用变量,以及添加任何表达式,会把表达式的结果作为字符串的一部分,实现java字符串拼接的效果 例如: 运行结果:
阅读全文
摘要:一、if/else if 表达式 在Java中if...else是语句,而在kotlin中if..else是表达式,是有结果的 例如: 二、range表达式 用in关键字判断值是否在某个范围内,in A..B,左右两边都是闭区间[A,B] 例如: if(age !in 0..3){ //age不在0
阅读全文
摘要:方式一:双击shift,输入show kotlin bytecode 方式二:菜单栏Tools->Kotlin->Show Kotlin Bytecode
阅读全文
摘要:Java中的数据类型有基本数据类型和引用数据类型两种 Kotlin中只有引用数据类型,但出于更高性能的考虑,编译器会在字节码中将引用类型转为对应的基本数据类型
阅读全文
摘要:Kotlin语言在声明变量时,编译器可以根据变量的赋值推断出变量的类型,因此在变量声明时可省略类型定义 val age: Int = 2val age = 2val name:String = "Jack"val name = "Jack"val isFlag:Boolean = trueval i
阅读全文
摘要:类型 描述 示例 String 字符串 "Hello,World" Char 单字符 'A' Boolean true/false true false Int 整数 5 Double 小数 3.14 List 元素集合 "Jack","Rose","Jack" Set 无重复元素的集合 "Jack
阅读全文
摘要:只读变量并非绝对只读 编译时常量只能在函数之外定义(包括main函数) 因为编译时常量必须在编译时赋值,而函数都是在运行时调用,函数内的变量也都是在运行时才赋值,编译时常量在这些变量赋值前就已经存在了。 编译时常量只能是常见的数据类型 Byte、Short、Int、Long、Char、Float、D
阅读全文
摘要:Kotlin是编译型语言,它的特性更多的依赖于它的编译器。 变量声明 常用内置数据类型 类型推断 编译时常量 查看Kotlin字节码 Kotlin的引用数据类型 Kotlin中的表达式 Kotlin中的字符串模板
阅读全文
摘要:变量声明 变量声明关键字: 要声明可修改变量,使用var关键字 要声明只读变量,使用val关键字
阅读全文
摘要:设置视图的宽高 方式一:在xml文件中通过属性设置 宽:android:width 高:android:height 属性取值有下面三种: 1.match_parent:与上级视图保持一致 2.wrap_content:与内容自适应,以文本视图为例,如果超过上级视图宽度就会换行,超过上级视图高度就会
阅读全文
摘要:设置文本颜色 方式一:在java代码中通过调用文本视图对象的setColor()方法。 方法参数颜色值的取值 1.从Color类中取定义好的色值 TextView tv_hello = findViewById(R.id.tv_hello); tv_hello.setTextColor(Color.
阅读全文
摘要:设置文本内容的两种方式 在xml文件中通过属性android:text设置 在java代码中通过文本视图对象的setText()方法设置
阅读全文
摘要:设置文本字体大小的方式 在Java代码中通过调用 文本视图对象的setTextSizeI()方法 在xml文件中通过android:textSize属性设置字体大小,此时需要指定字号单位注:Android在布局文件中字号单位通常用sp。 尺寸单位相关知识补充 像素(Pixel):又称为图像元素,是构
阅读全文
摘要:文本显示 设置文本内容 设置文本字体大小 设置文本颜色 视图设置 设置视图的宽高 设置视图的间距 设置视图的对齐方式 常用布局 线性布局LinearLayout 相对布局RelativeLayout 网格布局GridLayout 滚动布局ScrollView 按钮触控 按钮控件Button 按钮点击
阅读全文
摘要:每个应用的根目录中都必须包含一个 AndroidManifest.xml,这个文件指定了App的运行配置信息,它是一个XML描述文件,初始内容如下:
阅读全文
摘要:build.gradle:编译配置文件 项目级别的 build.gradle 指定了当前项目的总体编译规则。模块级别的 build.gradle 对应于具体模块,每个模块都有自己的 build.gradle,它指定了当前模块的详细编译规则。
阅读全文
摘要:App工程分为两个层次,第一个层次是项目,依次选择菜单File→New→New Project即可创建新项目。另一个层次是模块,模块依附于项目,每个项目至少有一个模块,也能拥有多个模块,依次选择菜单File→New→New Module即可在当前项目创建新模块。一般所言的“编译运行App”,指的是运
阅读全文
摘要:Android 采用 Log 工具打印日志,它将各类日志划分为五个等级: Log.e: 表示错误信息,比如可能导致程序崩溃的异常。 Log.w:表示警告信息。 Log.i: 表示一般信息。 Log.d: 表示调试信息,可把程序运行时的变量值打印出来,方便跟踪调试。 Log.v: 表示冗余信息。
阅读全文
摘要:Android操作系统是开源的,Google在发布Android各版本系统的同时也会一起发布源代码,国内各手机厂商会在原生系统上进行定制开发,并且同时开发对应的驱动(用于跟硬件交互)程序,从而统更好的与硬件交互,所以一般国产手机即使刷机刷上原生Android系统也无法使用,因为厂商没有给手机开发对应
阅读全文
摘要:Android发展历程 Android Studio下载安装 SDK下载安装 使用Android Studio创建工程与创建模拟器 App运行日志 使用真机调试运行App Android开发涉及的编程语言 命令式UI 声明式UI App工程目录 编译配置文件build.gradle 清单文件 界面显
阅读全文
摘要:sdk:Software Development Kit(软件开发工具包) adb:Android Debug Bridge(Android调试桥) xml:Extensible Markup Language(可扩展标记语言)
阅读全文
摘要:安卓(Android)是一种基于Linux内核(不包含GNU组件)的自由及开放源代码的操作系统。主要使用于移动设备,如智能手机和平板电脑,由美国Google公司和开放手机联盟领导及开发。Android操作系统最初由Andy Rubin开发,主要支持手机。 Android发展过程中几个重要事件: 20
阅读全文
摘要:GC:Garbage Collection(垃圾回收) JDK:Java Development Kit(Java开发工具集) JRE:Java Runtime Environment(Java运行环境) JVM:Java Virtual machine(Java虚拟机)
阅读全文
摘要:查看两台电脑是否可以通信命令: ping + ip地址 ping + 域名 例:ping www.baidu.com,ping 220.181.38.149百度域名只有一个,ip地址会有很多,不同地方ip一般不同, 域名底层最终还是会被解析成ip地址 ping www.baidu.com -t这种方
阅读全文
摘要:查看本机ip地址:ipconfig 查看本机更详细网络信息:ipconfig /all 网卡的物理地址,也叫MAC地址,如下图中的68-54-5A-57-03-AF,电脑和手机中都会有网卡,笔记本一般是 两块(有线网卡和无线网卡),手机是一块,网卡在出厂时就被指定了物理地址,且这一地址是全球唯一的。
阅读全文
摘要:删除一个或多个文件命令:del 模糊匹配时不要把"."特殊化,它也是一个普通字符
阅读全文
摘要:切换目录使用cd(change directory)命令完成 语法格式:cd + 路径 windows下路径分为:绝对路径和相对路径 绝对路径:在windows操作系统中凡是路径起点是盘符的都是绝对路径,例如: C:\Users\Administrator C:\Users C:\Users\Pub
阅读全文
摘要:显示当前目录下所有文件命令:dir
阅读全文
摘要:文件扩展名显示 EditPlus文本编辑器安装、设置 文件默认打开方式设置 常用DOS命令 创建目录 切换盘符 显示当前目录下的所有文件 切换目录 退出DOS命令窗口 清屏 删除一个或多个文件 查看本机ip地址 查看两台计算机是否可以通信 常用文本编辑快捷键 计算机编程语言发展史 Java语言概述
阅读全文
摘要:切换盘符 直接输入盘符就行,例: c: 回车 d: 回车 e: 回车 f: 回车 就OK了。
阅读全文