, 3 10月 2022 作者 847954981@qq.com 后端学习, 我的编程之路 Kotlin安卓开发学习(5) 在Activity中使用Menu 想要在activity内使用菜单,需要专门去创建菜单布局...: Boolean { menuInflater.inflate(R.menu.main, menu) return true } 这里的menuInflater实际上是调用了父类的getMenuInflater...()方法得到了对象,在调用它的inflate()方法,其传入两个参数第一个参数用于指定我们通过哪一个资源文件来创建菜单,第二个参数用于指定我们的菜单项将添加到哪一个Menu对象当中。...最后给这个方法返回true,表示允许创建的菜单显示出来,如果返回了false,创建的菜单将无法显示。...别的设置方法与之前的菜单基本相同 销毁一个Activity 使用finish()方法可以销毁一个Activity
, 28 5月 2022 作者 847954981@qq.com 后端学习, 我的编程之路 Kotlin安卓开发学习(1) Kotlin变量与函数 变量: Kotlin中的变量定义和Java中差别很大...Kotlin有着优秀的类型推导机制,可以完成类型的自动推导,所以只需要这两种关键字便可。...且由于Kotlin的推导机制,这里可以简化掉返回Int类型的声明: fun largerNumber(num1: Int, num2: Int) = max(num1, num2) if条件语句 Kotlin...循环语句 与Java相同,Kotlin也提供了while和for两种循环方法,while与Java没有任何区别,但Kotlin在for循环上做了很大程度的修改。...Java中最常用的for-i循环在Kotlin中直接被舍弃了,而Java中另一种for-each循环则被Kotlin进行了大幅度的加强,变成了for-in循环。
, 29 7月 2022 作者 847954981@qq.com 后端学习, 我的编程之路 Kotlin安卓开发学习(3) 数据类与单例类 在Java中,数据类占据着重要的角色,其通常需要重写包括...单例类是Kotlin特有的功能,其实现的是最常用、最基础的设计模式之一的单例模式,它可以避免创建重复的对象。比如我们希望某个类在全局最多只能拥有一个实例,这时就可以使用单例模式。..., "Grape") 这里我们 listof() 这个Kotlin方法来快速实现集合的创建。...Lambda的集合的函数式API 首先在Kotlin中,Lambda的语法结构为: {参数名1: 参数类型, 参数名2: 参数类型 -> 函数体} 但在很多情况下,我们是不需要使用完整的Lambda表达式的...,因为Kotlin默认所有的参数和变量都是不可为空的,所有传入的study也不可能为空,当传入null时,会提示错误。
, 29 8月 2022 作者 847954981@qq.com 后端学习, 我的编程之路 Kotlin安卓开发学习(4) 前面我们学习了Kotlin 的基本语法,但我们最终的目的是作为安卓开发。...因此,我们需要学习安卓的页面开发知识。 Activity Activity是安卓开发的最重要组成之一,它是一种可以包含用户界面的组件,主要用于和用户进行交互。...) 除此之外,我们还可以使用android:label指定Activity中标题栏的内容 需要注意的是,给主Activity指定的label不仅会成为标题栏中的内容,还会成为启动器(Launcher)中应用程序显示的名称...findViewById()方法返回的是一个继承自View的泛型对象,因此Kotlin无法自动推导出它是一个Button还是其他控件,所以我们需要将button1变量显式地声明成Button类型。...使用Kotlin编写的Android项目在app/build.gradle文件的头部默认引入了一个kotlin-android-extensions插件,这个插件会根据布局文件中定义的控件id自动生成一个具有相同名称的变量
, 30 5月 2022 作者 847954981@qq.com 后端学习, 我的编程之路 Kotlin安卓开发学习(2) 和很多现代高级语言一样,Kotlin也是面向对象的。...这就是Kotlin不同的地方,在Kotlin中任何一个非抽象类默认都是不可以被继承的,相当于Java中给类声明了final关键字。...= 0 } 与Java中不同,Kotlin中继承需要在继承类后面加上一对括号,为什么需要加上括号,这就涉及了Kotlin主构造函数和次构造函数的概念。...这就涉及了Java继承特性中的一个规定,子类中的构造函数必须调用父类中的构造函数,这个规定在Kotlin中也要遵守。...Kotlin中,我们使用override关键词来重写或者实现接口中的函数。 除此之外Kotlin还增加了一个额外的功能:允许对接口中定义的函数进行默认实现。
, 10 10月 2022 作者 847954981@qq.com 后端学习 Kotlin安卓开发学习–Intent的使用 Intent是Android程序中各组件之间进行交互的一种重要方式,它不仅可以指明当前组件想要执行的动作...> cls)前一个参数接受一个启动activity的上下文,后一个参数提供需要启动的Activity。...比如前面我们传入的URI,如果intent的action是打开网页,则通过传值,可以实现打开固定网页的效果。...用于指定数据的协议部分,如上例中的https部分。 android:host。用于指定数据的主机名部分,如上例中的www.baidu.com部分。 android:port。...用于指定可以处理的数据类型,允许使用通配符的方式进行指定。 只有当标签中指定的内容和Intent中携带的Data完全一致时,当前Activity才能够响应该Intent。
wanandroid_kotlin MD + Retrofit + RxJava + MVP + AndroidX 玩安卓Kotlin版,一步一步完善中。...玩安卓 Flutter版本 玩安卓 Java版本 玩安卓 小程序版本 玩安卓 Kotlin版本 截图 image.png image.png Todo 注册 启动页 退出 搜索 收藏 分享...RxJava Retrofit OkHttp Glide Banner VerticalTabLayout AgentWeb BRVAH flowlayout 环境 Android Studio 3.6.1 Kotlin...1.3.61 Github https://github.com/yechaoa/wanandroid_kotlin
, 5 11月 2022 作者 847954981@qq.com 后端学习, 我的编程之路 Kotlin安卓开发学习-标准函数和静态方法 Kotlin的标准函数指的是Standard.kt文件中定义的函数...,任何Kotlin代码都可以自由地调用所有的标准函数。...熟练使用这些函数,能够更快地完成数据的解析方法。 静态方法 在编程中,静态方法是很重要的一环。但Kotlin弱化了静态方法这个概念,因为kotlin提供了比静态方法更好的语法特性–单例类。...只是Kotlin会保证Util类始终只会存在一个伴生类对象,因此调用Util.doAction2()方法实际上就是调用了Util类中伴生对象的doAction2()方法。...除了添加注解来实现静态方法,Kotlin也能使用顶层方法来实现效果。 顶层方法指的是那些没有定义在任何类中的方法。比如我们创建一个新的Kotlin文件,并在内部直接写入方法,那么这个方法就是顶层方法。
, 6 10月 2022 作者 847954981@qq.com 后端学习, 我的编程之路 Kotlin安卓编程—-生命周期以及启动方式 在之前的学习中,我们可以发现,Activity是的层叠的。...这个方法在Activity完全不可见的时候调用。与onPause()的区别是,当启动的是一个对话框式的Activity,只会调用onPause()方法。 onDestroy()。...standard 默认的启动模式在standard模式下,每当启动一个新的Activity,它就会在返回栈中入栈,并处于栈顶的位置对于使用standard模式的Activity,系统不会在乎这个Activity...假设我们的程序中有一个Activity是允许其他程序调用的,如果想实现其他程序和我们的程序可以共享这个Activity的实例,使用前面3种启动模式肯定是做不到的,因为每个应用程序都会有自己的返回栈,同一个...Activity在不同的返回栈中入栈时必然创建了新的实例。
Java是很多开发者创建安卓应用的首选语言。但它在 Android 界的领导地位正受到各种新语言的挑战,Kotlin就是其一。...虽然Kotlin最近才开始受到热捧,但有为数不少的人相信 Kotlin 在不久的将来,会成为Java最大的竞争者,甚至会把 Java 拉下移动开发的王座。...Kotlin 更快的构建过程。...在 LiveEdu 上有一个点击率超高的教程 — 如何用 Kotlin 开发类似 Instagram 的安卓 App。...他擅长使用包括 Java 和 Kotlin 在内的多种语言,因此对于这两个语言在安卓开发方面的利弊了如指掌。与市面上现有教程不同,这套教程将从业界实战角度出发,提供一些 Kotlin 的屠龙之技。
一、引言 开发 Android App,很多操作是耗时的,比如网络请求、数据库操作。这些任务如果不处理好,会卡住整个App。为了解决这个问题,Kotlin 协程提供了一种简单的方法来处理耗时操作。...本文会用简单讲解 Kotlin 协程的几个常用功能,比如 lifecycleScope.launch、launchWhenResumed 和 suspend,通过例子帮助大家理解它们的用途。...的生命周期绑定。...六、结论 Kotlin 协程是 Android 开发中的重要工具,简化异步任务的处理,避免复杂的回调机制。...如果你看完文章觉得有用的请手动点赞,欢迎提问,谢谢大家的阅读 )
windows下的服务:没有界面、长期运行在后台的应用程序; android下的服务:应用程序的一个组件,没有界面activity,长期运行在后台; 进程:是应用程序运行的载体。...进程的生命周期: 1、应用程序一启动的时候就创建了进程; 2、当应用程序退出的时候进程并没有退出; 3、只有手工停止这个进程,进程才会结束; 操作系统尽量长时间的运行应用程序的进程,为了保证内从空间不被大量占用...,它会按照进程的优先级,从低到高一级一级的杀死进程,直到内存空间被清理的差不多。...(重点) 本地服务:写在自己的应用程序的工程里的服务 ,使用自己应用程序的进程运行这个服务; 远程服务:写在别的应用程序的工程里的服务,使用别的应用程序的进程运行这个服务(安装在同一个手机上的应用程序)...; IPC: Inter Process Communication(进程间的通讯); aidl: Android Interface definition language 安卓接口定义语言; aidl
为什么需要广播接受者 广播: 1、电台:发送一定频道的广播消息,50mhz; 2、收音机:调整到一定频道,接收广播消息; android应用程序里面的电台:系统内置的一个服务,会把事件(电量不足、电量充满...、开机启动完成)作为一个广播消息发送其他的接收者; android应用程序里面的收音机:自己写的一个广播接收者的一个类。...,系统会自动启动广播接收者的进程,调用onReceive方法,接收消息。...2.3的模拟器,4.0之后版本没有卸载、挂载、移除SD卡的功能。...就能接收到的广播; //发送一个广播消息(无序广播) sendBroadcast(intent); 有序广播: 当广播把消息发送出去后,消息会根据广播接收者的优先级从高到低一级一级地下发消息。
本篇文章主要说一下月日历数据、月视图绘制以及点击日期的实现。 数据 数据部分,网上能找到比较完整的工具类,主要是根据本月和上月的天数以及本月第一天是周几来计算。...首先计算上月日期: 由本月的第一天是周几和上个月的天数,得出上月的日期的显示 int temp = lastMonthDays - firstDayOfWeek + 1;//上个月的天数减去本月第一天周几再加上...1 再计算本月日期:本月内的数据根据该月的天数跑循环。...四个点确定一个矩形,可以在纸上画一下大致的图案,大致画个一两行矩形,应该就找到规律了,感觉有点像以前上学时做的找规律的数学题。...: 1、是不是本月的数据(用颜色区分本月和其他月的数据) 2、是不是今天 3、有没有选中的日期 4、显示不显示农历 其中今天和选中的日期用圆环表示,就需要在当天和选中的日期的矩形中绘制圆环。
标签的值就它的界面的标题 4、activity的label标签的值就它的桌面快捷图标的名称 5、application中的label标签和activity中的label标签不是一个概念,application...中的label表示应用程序的名称,activity中的label标签表示的是它的界面的名称。...uri = intent.getData(); 意图设计的目的 意图设计的目的:解耦,实现应用程序的高内聚、低耦合。...onStart:当界面可见的时候调用 onResume 按钮可以被点击的时候 onPause 按钮失去焦点的时候: onStop 界面不可见的时候调用: onDestroy 销毁activity...android:launchMode="singleTop" 如果任务栈的栈顶存在这个要开启的activity,不会重新的创建activity,而是复用已经存在的activity。
Activity是用户和应用的直接交互窗口,它负责管理和处理应用的UI部分。 核心功能 管理UI: Activity 负责加载和管理应用的界面布局。...示例代码 kotlin 复制代码 import android.os.Bundle import androidx.appcompat.app.AppCompatActivity class MainActivity...示例代码 kotlin 复制代码 import android.app.Service import android.content.Intent import android.os.IBinder class...示例代码 kotlin 复制代码 import android.content.BroadcastReceiver import android.content.Context import android.content.Intent...示例代码 kotlin 复制代码 import android.content.ContentProvider import android.content.ContentValues import android.database.Cursor
方法和单击事件的方法都是运行在主线程中的。...当我们的Android应用程序的进程一创建的时候,系统就给这个进程提供了一个Looper,Looper是一个死循环,它内部维护这个一个消息队列,Loop不停地从消息队列中取消息(Message),取到消息就发送给了...网图片查看器(重点) 1、发送请求:GET 2、接收服务器端返回的响应数据 使用代码实现的步骤: 1、创建URL,打开一个HTTP的连接; 2、设置请求头信息:GET(GET、POST) 3、接收服务器端返回的响应数据...从Androi4.0开始,google更加UI界面运行的流畅性,强制要求访问网络的操作不能在主线程中进行,只能在子线程中进行。.../src/com文件夹拷到自己的代码的src目录中 2、调用image.setImageUrl(item.getImage())方法加载图片 imageLoader 开源的项目 不重复发明轮子
---- title: 安卓基础干货(三):安卓数据库的学习 copyright: true categories: 安卓基础干货 date: 2018-01-10 19:35:26 tags: [Android...BLOB(二进制对象)数据类型,也接受varchar(n)、char(n)、decimal(p,s) 等数据类型, SQLite最大的特点是你可以把各种类型的数据保存到任何字段中,而不用关心字段声明的数据类型是什么...但有一种情况例外:定义为INTEGER PRIMARY KEY的字段只能存储64位整数, 当向这种字段保存除整数以外的数据时,将会产生错误。...helper = new DBHelper(this, "account.db", null, 1); onCreate是在数据库创建的时候调用的,主要用来初始化数据表结构和插入数据初始化的记录...onUpGrade是在数据库版本升级的时候调用的,主要用来改变表结构 2、调用db = helper.getWritableDatabase(),得到数据对象 数据库sql语句的增删改查 创建表结构:
多种媒体的综合。图片、音乐、视频。 计算机表示图形的方式 1、bmp 以高质量保存所有类型的图片,用于计算机。...每个像素点的颜色是一个RGB,使用6个十六进制的数值来表示。 文件头信息占用的数据大小。 体积比较大。 2、jpg 以良好的质量保存图片,用于计算机、电子邮件或网络。...jpg 工业图形的压缩算法,类似rar的算法。人眼识别精度有限,把相邻空间内类似的颜色使用同一个颜色来表示。 体积减小,失真。...RGB ARGB 32 应用程序在启动时系统为它创建一个进程,系统为每个进程创建dalvik虚拟机(模拟器设置的VM Heap),当图片的大小大于虚拟机的堆内存空间时,就内存溢出(内存泄露);...解决办法:缩放图片加载到内存 步骤: 1、获得设备屏幕的分辨率; 2、得到原图的分辨率; 3、通过比较得到一个合适的比例值; 4、按照比例值缩放图片 5、把图片显示在imageview 缩放图片并加载到内存中
在安卓中使用HTTP协议的最佳实践 在开发安卓应用时,网络通信是一个不可或缺的方面。HTTP协议是许多应用程序数据交换的基础,因此了解如何正确地使用它对于确保应用的性能和安全性至关重要。...选择合适的HTTP客户端 安卓提供了多种HTTP客户端,包括HttpURLConnection、OkHttp和Retrofit等。每个客户端都有其优势和特点。...安全网络通信 在进行网络通信时,保护数据和信息的安全性是非常重要的。以下是一些网络通信安全性的最佳实践: 减少敏感数据传输:尽量减少传输敏感或个人用户数据。...这样可以更容易地管理不同部分应用程序中的网络请求。 结论 在安卓应用开发中,正确使用HTTP协议对于提供良好的用户体验和保护用户数据至关重要。...希望这篇文章能够帮助您理解在安卓中使用HTTP协议的重要性以及如何实现最佳实践。
领取专属 10元无门槛券
手把手带您无忧上云