Реализация интерфейса отображения Kotlin 1.3.0 для расширения класса Java во время компиляции - PullRequest
0 голосов
/ 06 ноября 2018

С момента обновления до Kotlin 1.3.0, несколько моих классов, как показано ниже

class BrokenClass : Parcelable, Serializable {
    var id: Int? = null
    ...
}

вызывает ошибки времени компиляции, такие как

error: no interface expected here 
public final class AccessCode extends android.os.Parcelable implements java.io.Serializable {

Таким образом, процессор Kotlin рассматривает первый интерфейс как класс и помещает его в расширения вместо инструментов.

Ответы [ 2 ]

0 голосов
/ 18 января 2019

Это ошибка: https://youtrack.jetbrains.com/issue/KT-27506
Целью является Kotlin 1.3.30

В то же время вы можете обойти это, явно расширив от Any:

class BrokenClass : Any(), Parcelable, Serializable {
    var id: Int? = null
    ...
}
0 голосов
/ 06 ноября 2018

Добавить аннотацию @Parcelize в начале.

https://proandroiddev.com/parcelable-in-kotlin-here-comes-parcelize-b998d5a5fcac

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...