如何在“金额”类中表示负数?

根据文档,在Amount类中不允许使用负数: https : //docs.corda.net/api/kotlin/corda/net.corda.core.contracts/-amount/ 当一个ContractState类的Amount字段可以变为负值时(例如可以多付的余额),表示负数的最好方法是什么?

改造 – 分析意外的数据types

我正在Android Kotlin项目中使用Retrofit库 并想处理解析意外的数据types。 例如,如果JSON: { “boolean”: true, “number”: “123”, “string”: “Hello World” } 数据类将是 data class Response ( val boolean: Boolean? = null, val number: Int? = null, val string: String? = null ) 通常情况下,Retrofit将无法解析响应,并且onFailure()将被调用,因为改装不能解析属性number因为它是以字符串forms返回的,并且期望编号,整个对象将无法解析。 我想要的,正常处理请求只是未分析的字段应该是空的。

Basic ConstraintLayout(工具栏,片段容器和底部导航)

我正在适应Android的Kotlin和ConstraintLayouts。 我试图有一个简单的布局,有一个工具栏和底部的导航视图。 这是我目前的XML: 不幸的是,我误解了一些东西,似乎无法获得片段容器来填充工具栏和底部导航之间的空间。 有人能把我引向正确的方向吗?

等待API调用以完成RxJava和Retrofit

我正在使用RxAndroid和RxJava和Kotlin向API发出各种请求,并以异步方式将其收回: getClient().sendSomeData(data) .subscribeOn(Schedulers.io()) .observeOn(AndroidSchedulers.mainThread()) .subscribe( { Log.i(“upload”, “data ok”) }, { t -> Log.e(“upload”, “data error: ” + t.stackTrace) } ); getClient().sendSomeOtherData(otherData) .subscribeOn(Schedulers.io()) .observeOn(AndroidSchedulers.mainThread()) .subscribe( { Log.i(“upload”, “otherData ok”) }, { t -> Log.e(“upload”, “data error: ” + t.stackTrace) } ); 等等。 现在我想要做的是,等待所有api请求完成并显示进度。 我如何等待所有可观察的事情完成并获得进展回调?

Android应用程序库效率

Android是否做任何事情来跨应用程序共享重复的库? 看来,操作系统可以检测到重复的哈希值,并避免为每个应用程序分开的副本。 如果用户安装了50个应用程序,并且其中许多应用程序具有Android支持,Kotlin和Guava库的版本,那么这将是一个很好的机会来节省磁盘空间。

IllegalArgumentException对unlockCanvasAndPost

我有以下Kotlin代码在canvas上绘制: override fun run() { while(!isPaused) { if(!holder.surface.isValid){ Thread.sleep(10) continue } val canvas = holder.lockCanvas() if(canvas == null) { Thread.sleep(10) continue } if(!stateManager.isStarted){ stateManager.handler = handler stateManager.start(2000) } drawAdultBackground(canvas) drawChildBackground(canvas) holder.unlockCanvasAndPost(canvas) } } 但是我有时在unlockCanvasAndPost上得到一个IllegalArgumentException。 什么可以导致这个? 据我所知,这个错误最常见的原因是canvas没有锁定,但有没有办法与这个代码,它不能被锁定?

如何区分绑定的可调用成员引用和kotlin中相同types的函数?

当涉及方法签名或定义时,是否有任何区分的方法 users().indexOn(User::id) 和 users().indexOn { it.id() } ? 也就是说,要指定绑定成员引用是必需的,而不是函数实例,反之亦然。 以上是上面例子的签名: fun indexOn(function: (T) -> U): List 在同样的说明,是否有可能区分构造函数引用和返回一个types的函数? 例如, query(::SomeLookup)与query { SomeLookup(args) } (如果可能,不包含kotlin.reflect)

如何生成与dokka上载资料库的javadoc jar?

我最近迁移了一个java组件到kotlin。 到目前为止,当我使用Maven发布插件时,它也自动生成了javadoc,它也被上传到oss.sonatype.com。 另一方面,Dokka似乎并没有将发行版插件与开箱即可集成。 因此,在上传到oss.sonatype.com之后,nexus拒绝发布validation错误,因为javadoc jar缺失。 有没有与Maven发布插件的dokka集成?

Android Studio 3.1 Canary 4 Genymotion模拟器插件失败

我正在使用Android Studio 3.1 Canary 4和Kotlin支持 。 由于默认的Android AVD太慢,我更喜欢Genymotion 。 尽管安装了必要的插件,Android Studio中没有Genymotion Emulator的选项。它不支持Beta吗? 还是我错过了什么? 插入 装Genymotion PS :[安装的虚拟盒,Genymotion,Android Studio]和Genymotion中的选定SDK。 还配置了虚拟框。 每做完一个步骤后重新启动很多次

我怎样才能把一个groovy任务gradle转换成Gradle Kotlin DSL来生成一个pom.xml?

下面的Gradle脚本的build.gradle.kts版本是什么? apply plugin: ‘maven’ apply plugin: ‘java’ sourceCompatibility = 7 targetCompatibility = 7 dependencies { compile ‘com.google.guava:guava:13.0.1’ compile ‘joda-time:joda-time:2.1’ testCompile ‘junit:junit:4.11’ testCompile ‘org.mockito:mockito-core:1.9.5’ } task writeNewPom << { pom { project { groupId 'org.example' artifactId 'test' version '1.0.0' inceptionYear '2008' licenses { license { name 'The Apache Software License, Version 2.0' url 'http://www.apache.org/licenses/LICENSE-2.0.txt' distribution 'repo' […]