代码编织梦想

 知晓当前是在哪一个 Activity Kotlin.Android-爱代码爱编程

 知晓当前是在哪一个 Activity open class BaseActiviyt :AppCompatActivity(){ override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) Log.

idea下使用gradle多项目构建生成proto协议并使用-爱代码爱编程

idea下使用gradle多项目构建生成proto协议并使用 注意事项1.本文要达到的效果2. 建立目录结构根目录下setting.gradle配置根目录下build.gradleprotocol子项目的build.gradle中的配置:3.写proto协议4.产生java代码5. 解决之前的警告6.使用proto协议写代码7.后记 注意事项

Kotlin中使用高阶函数代替接口回调-爱代码爱编程

Java思路实现 创建接口,创建对应抽象方法声明接口成员变量创建一个公共的监听方法 interface OnDialogClickListener{ fun onClickOK() } private var onDialogClickListener: OnDialogClickListener?=null

2020年Android开发市场真的饱和了吗?-爱代码爱编程

公司在杭州,根据我的不客观数据体验来看,最饱和的是iOS,同样发布一个职位iOS是其他技术岗位10倍的投递量。 当然Android作为一个已经市场化十余年的技术门类,它必然早已经是成熟常态。这样的技术行业都不再会有爆炸式的增长。连同Android硬件、手机、平板等都会趋于稳定,再就是一个稳中逐步下降的趋势。对于这方面人才供需也会趋于稳定,市场对开发者的从

Kotlin可见修饰符-爱代码爱编程

Kotlin可见修饰符使用 kotlin可见修饰符和java中的类似,同样使用的是public 、protected、private修饰符,不过在kotlin中默认的是public,在java中默认的修饰符是包私有,在kotlin中只把包当作在命名空间中组织代码的一种方式使用,并没有对其做可见性控制,而是提供了一个新的修饰符,internal来替代。

Kotlin-inline, noinline, crossinline关键字解析——高阶函数详解(第一行代码Kotlin学习笔记7)-爱代码爱编程

目录 1. 高阶函数定义2. 高阶函数应用3. 内联函数inline4. noinline与crossinline4.1 noinline4.2 crossinline 1. 高阶函数定义 高阶函数和Lambda的关系密不可分,不熟悉Lambda的同学请移步: Kotlin-集合与Lambda编程map,filter,any,all函数的使用

android计算器-kotlin-爱代码爱编程

前言 这学期上了移动智能开发,做了几个作业,虽然做得不是很理想,但是还是想记录一下,方便有些用法以后回来可查。 android下载和配置见:android studio配置介绍 。 关键代码: Android-class/calculator (gitee仓库) 完整代码见 Calculator-app (gitee仓库) 原创链接: andro

singlelnstance模式singlelnstance模式kotlin.Android-爱代码爱编程

Activity启动模式 singlelnstance模式 就是把要启动的Activity放在定外一个返回栈中、 代码如下 class FirstActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { sup

Android  监听系统返回键实现Fragment返回上一级-爱代码爱编程

Android  监听系统返回键实现Fragment返回上一级 项目需求:在Fragment页面监听系统返回键实现返回上一级Fragment页面项目场景:Fragment多层嵌套导致导致在第二级Fragment点击系统返回键直接退出最外层 百度好多家博主都po了通过接口回调的方式在BaseFragment中定义onBackListener接口  在最外

最强总结 | Java-Kotlin双译手册,收藏必备-爱代码爱编程

这篇文章梳理了我们平时开发中,最常用的Java代码对应的Kotlin实现,初学者可以当做实践手册,查找和阅读都非常方便,一眼就能看出来。 打印日志 Java System.out.print("Amit Shekhar"); System.out.println("Amit Shekhar"); Kotlin print("Amit

一文让你简单搞定Android屏幕适配——最易懂的今日头条方案讲解-爱代码爱编程

屏幕参数基础概念 硬件/物理参数 物理属性名称定义单位尺寸对角线的长度inch,约等于2.54厘米分辨率屏幕方向上的像素个数pixel,个像素密度单位英寸上的像素个数ppi,point per inch其中: (此处应该height^2 + width^2 但是CSDN不支持此类型的maekdown我就不改了) 日常中我们一般听到或者用到的就是屏

Retrofit+Kotlin Coroutine重构Android网络框架-爱代码爱编程

*本篇文章已授权微信公众号 guolin_blog (郭霖)独家发布 前言 本文会讲解Coroutine的优点,以及一步步的从零开始改造 Retrofit+Coroutine,对改造中的关键问题进行讲解,给出详细可运行的示例代码。最后会给出Demo,Demo经过简单修改可以直接运用在自己的实际项目中。 Kotlin Coroutine 简介

Activity启动模式singleTask模式-爱代码爱编程

Activity启动模式 singleTask模式 单任务栈顶复用模式 我的理解是这个任务等一下我还要用,先停止一下,我用的时候在启动 class FirstActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) {

Kotlin语法:延迟初始化和密封类学习讲解-爱代码爱编程

1. 延迟初始化 延迟初始化使用的是lateinit关键字, 它可以告诉编译器,我会在晚些时候对这个变量进行初始化 ,这样就不用在一开始的时候给它赋值为null了. 不过使用lateinit关键字也有风险,如果在变量还没有初始化就去使用它, 那么会抛出一个 UninitializedPropertyAccessException异常. 示例: l

安卓广播实现强制下线功能(Kotlin语言实现)-爱代码爱编程

Android 01: Android Studio目录结构介绍, 安卓开发入门02: Android中的日志工具类Log详细介绍03: 添加Button元素, 并且在活动中使用Toast和Menu04: 安卓开发之Intent使用介绍(显式Intent和隐式Intent)05: 安卓广播机制讲解(标准广播和有序广播)06: 安卓广播实现强制下线功能(K

kotlin 主构造函数的参数可以加上var val,普通函数却不能用var或者val-爱代码爱编程

初学kotlin的时候有个疑问一直没有搞懂,为啥kotlin构造函数里面的参数可以用var或者val,普通的fun却不可以,这到底是为什么呢? 我们知道kotlin 声明变量的时候用的语法是 val name : String 主构造函数的参数加上 var 和 val 这只是声明属性以及从主构造函数初始化属性的一种简洁的语法,意思是将该变量作为类的

Activity启动模式singleTop 模式-爱代码爱编程

Activity启动模式 singleTop 模式 中文翻译单顶模式 class FirstActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceSta

Activity启动模式第一种标准的启动模式 standard-爱代码爱编程

Activity启动模式 标准的启动模式 standard class FirstActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState

Kotlin-扩展函数和运算符重载(第一行代码Kotlin学习笔记6)-爱代码爱编程

目录 1. 扩展函数2. 运算符重载运算符重载对照表(复制于第一行代码随书ppt) 1. 扩展函数 如果我们之前是Java使用者,那么很遗憾的是,Java一直以来都不支持这个非常有用的功能。那么扩展函数是什么呢?其实扩展函数就是说在不修改某个类源码的情况下,仍然可以向该类添加新的函数。 比如我们想要统计一个字符串中字母的数量,如果没有扩展函数

Android安卓应用开发:在Kotlin代码中使用在arrays.xml/integer-array中定义的图片-爱代码爱编程

1. 在arrays.xml中定义图片位置 <?xml version="1.0" encoding="utf-8"?> <resources> <!--电影图片资源--> <integer-array name="filmImage"> <item>@mipma