01 2022 档案
摘要:引言 在Kotlin中,我可以声明普通类、数据类、静态类,它也有抽象类和接口,其中abstract关键字只能作用在普通类。 类和对象 普通类 Kotlin中的普通类通过class关键字定义,这种类默认都是final类型的,无法被继承。如果希望被继承,需要在前面增加open关键字 class Pers
阅读全文
摘要:1.实现效果图: 其实总体和java也差不多的 就是部分写法稍微有点变化,更加简洁了 写代码更方便了 2.适配器: package com.example.admin.zkotlin import android.content.Context import android.graphics.Col
阅读全文
摘要:1.在其他目录中依赖flutter SDK plugins { id 'com.android.library' id 'kotlin-android' } // 在其他目录中依赖flutter SDK def localProperties = new Properties() def local
阅读全文
摘要:效果图: 1 .测试Demo启动文件 main() { runApp(MaterialApp( home: SignSwiperPage(), )); } class SignSwiperPage extends StatefulWidget { @override _SignSwiperPageS
阅读全文
摘要:redux主要由Store、Action、Reducer三部分组成 Store用于存储和管理State Action用于用户触发的一种行为 Reducer用于根据Action产生新的State flutter redux流程 1
阅读全文
摘要:委托模式是软件设计模式中的一项基本技巧。在委托模式中,有两个对象参与处理同一个请求,接受请求的对象将请求委托给另一个对象来处理。 Kotlin 直接支持委托模式,更加优雅,简洁。Kotlin 通过关键字 by 实现委托。 类委托 类的委托即一个类中定义的方法实际是调用另一个类的对象的方法来实现的。
阅读全文
摘要:fun main(arg: Array<String>) { val myClass1 = myClass1() myClass1.name="mycalsss1" val myClass2 = myClass2() myClass2.name="myclass2" println(myClass1
阅读全文
摘要:IF 表达式 一个 if 语句包含一个布尔表达式和一条或多条语句。 // 传统用法 var max = a if (a < b) max = b // 使用 else var max: Int if (a > b) { max = a } else { max = b } // 作为表达式 val
阅读全文
摘要:实现效果图 主要代码 class _MyHomePageState extends State<MyHomePage> { @override Widget build(BuildContext context) { return Scaffold( appBar: AppBar( leading:
阅读全文
摘要:Kotlin 接口与 Java 8 类似,使用 interface 关键字定义接口,允许方法有默认实现: interface MyInterface { fun bar() // 未实现 fun foo() { //已实现 // 可选的方法体 println("foo") } } 实现接口 一个类或
阅读全文
摘要:// 服务页item Widget _buildGridService() { return Scaffold( appBar: AppBar( elevation: 8.0, //阴影的高度 title: Text('便民服务'), backgroundColor: MyColors.color_
阅读全文
摘要:对于Android传统的代码编写方式,一般地,将页面UI的处理,数据的加载,全部放在Activity或Fragment中进行,但这并不满足“单一功能原则”,也不易于维护和扩展。我们应该将项目结构进行分层,传统的MVC,MVP和MVVM,都是将项目结构分了三层,“各管一摊”,这三种模式各有特点、各有利
阅读全文
摘要:本篇文章主要讲的是,kotlin 协程在 ktx 上的扩展 lifecycle 扩展 对于 lifecycle 的扩展,已经在 以前的文章中讲过了 主要的依赖 implementation "androidx.lifecycle:lifecycle-runtime-ktx:2.2.0" viewMo
阅读全文
摘要:Sealed Class 密封类 如果想对能够创建出的子类做限制,可以使用密封类。 下面一个例子是没有使用密封类的: interface Expr class Num(val value: Int) : Expr class Sum(val left: Expr, val right: Expr)
阅读全文
摘要:HttpURLConnection继承了URLConnection,因此也能够向指定站点发送GET请求、POST请求。它在URLConnetion的基础上提供了例如以下便捷的方法。 int getResponseCode():获取server的响应代码。 String getResponseMess
阅读全文
摘要:前提 初次安装flutter,通过代理设置加快速度安装首次更新数据,但在添加设备并开始打包编译时出现classpath找不到的情况 1.在初次启动IDE的时候会提示更新各种SDK包,此时一般会直接设置代理,我的系统时Ubuntu18.04,所以直接代理了本地vpn,127.0.0.1 端口1080
阅读全文
摘要:measureTimeMillis 统计一段代码耗时 内敛函数 measureTimeMillis{ } 可以很方便的统计一段代码执行的耗时。 使用: GlobalScope.launch { val time = measureTimeMillis { delay(1000) Log.d("zyj
阅读全文
摘要:Throws Exception Kotlin 的异常和 Java 的一样, try…catch…finally代码块处理异常,唯一一点不同是:Kotlin 的异常都是 Unchecked exceptions。 checked exceptions 是必须在方法上定义并且处理的异常,比如 Java
阅读全文
摘要:工具类 import java.io.ByteArrayOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import java.net.HttpURL
阅读全文