kotlin

Android 开发技术周报 Issue#283

岁酱吖の 提交于 2020-08-12 04:54:16
新闻 Android 11特性调整:安装外部来源应用需要重启APP Google Messages beta版迎来一个新的搜索框 Android开发者生态永远比不上iOS?“联盟与公约”们正改变这一点 谷歌新款Android TV串流设备外形曝光:代号Sabrina Android 11 Beta引入诸多改进:3种图标形状 Pixel Launcher应用推荐 Android更新改进了“就寝时间”功能体验 Android 11电源键菜单将引入针对智能家居设备的快捷操作 教程 Android Studio 4.0+ 中新的 UI 层次结构调试工具 开源库 ParcelableHelper A simple AOP tool that helps Android developers quickly implement Parcelable interfaces toolargetool A tool to help you debug TransactionTooLargeExceptions on Android 7 SimpleMarkdown SimpleMarkdown is an Android app for editing Markdown! Android-Architecture-Components The template project that uses

Mirror @RequestPart behavior in WebFlux functional router definitions with different content types

与世无争的帅哥 提交于 2020-08-11 18:50:30
问题 Problem We're developing a Spring Boot service to upload data to different back end databases. The idea is that, in one multipart/form-data request a user will send a "model" (basically a file) and "modelMetadata" (which is JSON that defines an object of the same name in our code). We got the below to work in the WebFlux annotated controller syntax, when the user sends the "modelMetadata" in the multipart form with the content-type of "application/json": @PostMapping(consumes = [MediaType

Mirror @RequestPart behavior in WebFlux functional router definitions with different content types

有些话、适合烂在心里 提交于 2020-08-11 18:47:44
问题 Problem We're developing a Spring Boot service to upload data to different back end databases. The idea is that, in one multipart/form-data request a user will send a "model" (basically a file) and "modelMetadata" (which is JSON that defines an object of the same name in our code). We got the below to work in the WebFlux annotated controller syntax, when the user sends the "modelMetadata" in the multipart form with the content-type of "application/json": @PostMapping(consumes = [MediaType

android 自定义步骤栏

北战南征 提交于 2020-08-11 18:41:07
今天自定义了一个操作步骤栏,虽然在平常的项目中用处不大,但是也值得记录一下,先看下效果图 图中红圈部分的内容就是效果图 先看下使用方法,代码使用了kotlin语言,如果是要java代码的话,可以自行用去转化,不难。 1.布局中使用自定义控件 2.在activity或是Fragment中使用 可以看到,使用了 建造者模式 提供了很多方法供用户自己设置属性,用户可以设置步骤总数,当前处于哪个步骤,是否显示间隔线以及间隔线的宽度高度颜色等,备注里写的很清楚。 以下是完整自定义组件的完整代码 package com.example.testproject.widget import android.content.Context import android.util.AttributeSet import android.util.TypedValue import android.view.Gravity import android.view.View import android.view.ViewGroup import android.widget.LinearLayout import android.widget.TextView import com.example.testproject.R class RegisterStepsBar : LinearLayout {

00、5分钟编程之javascript-课程大纲

丶灬走出姿态 提交于 2020-08-11 18:07:12
教程简介 1、阅读对象 只要对 js 基础掌握不牢的都适合 2、教程难度 初级「但是你不一定知道」,本人水平有限,文章内容难免会出现问题,如果有问题欢迎指出,谢谢 正文 视频 视频地址: www.bilibili.com/video/BV1kA… 一、本系列课程大纲 1、课程来源 首先我们要知道本系列教程的来源,大概有这么两个主要的原因 1、和一些前端开发人员聊天「其中不乏多年开发经验的」,对 js 的基础掌握的其实并不好,知其然,不知其所以然 2、看了 kotlin、swift、还有后来的 flutter、dart 等,发现这些语言语法都是类 js 语法,搞定了 js 这些语言都不是事,并且搞定了 js 什么 vue、react node 等照样拿下 2、课程受众和学习方式 直接看图 3、课程讲解内容 少啰嗦,看图 4、课程讲解方式 本系列课程的讲解方式主要是视频+笔记的形式,由于本人也在工作,所以都是业余时间录视频+写笔记,所以可能是笔记先行视频可能会滞后「希望大家谅解」 这里回归一下主题 5 分钟编程指的是每节视频的时长在 5 分钟左右 二、教程共享 本系列教程会共享到我的博客和 github 上面,并且视频会发布在 B 站上,朋友们可以选择性的看视频「B 站」或笔记「电子书」或是视频+笔记「博客」 博客: tigerchain.github.io/ B站: space

Programiz 中文系列教程·翻译完成

给你一囗甜甜゛ 提交于 2020-08-11 14:59:15
原文: Programiz 协议: CC BY-NC-SA 4.0 欢迎任何人参与和完善:一个人可以走的很快,但是一群人却可以走的更远。 在线阅读 ApacheCN 学习资源 目录 Programiz C 语言教程 C 简介 C 关键字和标识符 C 变量,常量和字面值 C 数据类型 C 输入输出(I/O) C 编程运算符 C 简单示例 C 流程控制 C if...else 语句 C for 循环 C while 和 do...while 循环 C break 和 continue C switch 语句 C goto 声明 C 控制流程示例 C 函数 C 函数 C 用户定义的函数 C 编程中用户定义函数的类型 C 递归 C 存储类 C 函数示例 C 数组 C 数组 C 多维数组 将数组传递给 C 中的函数 C 编程指针 C 指针 数组和指针之间的关系 C 按引用调用:使用指针 C 动态内存分配 C 数组和指针示例 C 字符串 C 编程字符串 使用库函数进行 C 编程中的字符串操作 C 编程中的字符串示例 结构与联合 结构 结构和指针 C 结构与函数 C 联合 C 结构示例 C 文件 C 文件处理 C 文件示例 其他主题 枚举 C 预处理器和宏 C 标准库函数 C 示例 C 程序:打印金字塔和图案 C 程序:检查数字是否为质数 C 程序:检查数字是否为回文 C 程序

Android 自定义ToolBar并沉浸式

﹥>﹥吖頭↗ 提交于 2020-08-11 12:13:03
  ToolBar是Android 5.0推出的一个新的导航控件用于取代之前的ActionBar,由于其高度的可定制性、灵活性、具有Material Design风格等优点,越来越多的App也用上了ToolBar。   沉浸式状态栏是从android Kitkat(Android 4.4)开始出现的,它可以被设置成与APP顶部相同的颜色,这就使得切换APP时,整个界面就好似切换到了与APP相同的风格样式一样。 依赖包:   Toolbar, implementation 'androidx.appcompat:appcompat:1.1.0'   沉浸式, implementation 'com.gyf.immersionbar:immersionbar:3.0.0' 1、自定义Toolbar步骤:s 1)、定义 /values/styles.xml <?xml version="1.0" encoding="utf-8"?> <resources> <style name="TextAppearance_TitleBar_Title" parent="TextAppearance.AppCompat.Toolbar.Title"> ... </style> <style name="TextAppearance_TitleBar_subTitle" parent=

【8】 kotlin 运算符

房东的猫 提交于 2020-08-11 10:43:12
官网地址 有更详细的说明 https://kotlinlang.org/docs/reference/operator-overloading.html#operator-overloading 、、未完待续 今天下班了 明天接着写 来源: oschina 链接: https://my.oschina.net/u/4347428/blog/4313029

用好 Require,check,assert,写好 Kotlin 代码

。_饼干妹妹 提交于 2020-08-11 07:04:19
在编码的时候,我们需要做很多的检测判断,比如某个变量是否为 null ,某个成员属性是否为 true ,执行某个操作结果是否成功。比如像下面的这段代码 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 var isDiskMounted = true fun createNewFile ( file : File ?): Boolean { return if ( isDiskMounted ) { if ( file != null ) { file . createNewFile () if ( file . exists ()) { true } else { println ( "Create file($file) failed" ) false } } else { println ( "File($file) is null" ) false } } else { println ( "Disk is not mounted" ) false } } 上面的代码实现了 检测磁盘是否挂载 检测file参数是否为null 检测执行操作结果是否成功(file.exists()) 但是上面的代码也有一些问题 太多的if else 检测,层级产生,不够平 多个方法出口 更不容易发现异常和错误(有点类似fail

kotlin实现单例

戏子无情 提交于 2020-08-11 04:15:14
/** * 功能:单例实现 */ class Singleton private constructor() { companion object { val instance by lazy(mode = LazyThreadSafetyMode.SYNCHRONIZED) { Singleton() } } } 来源: oschina 链接: https://my.oschina.net/u/4391429/blog/4334561