Неправильный тип аргумента для «размеров» в наборе аргументов.ожидается строка [] - PullRequest
1 голос
/ 24 сентября 2019

Полученная трассировка стека:

java.lang.IllegalArgumentException: неверный тип аргумента для «размеров» в наборе аргументов.ожидается строка [].на androidx.navigation.NavDestination.addInDefaultArgs (NavDestination.java:524) на androidx.navigation.NavController.navigate (NavController.java:932) на androidx.navigation.NavController.navigate (NavControl.ava) и NavController .jNavController.navigate (NavController.java:804) по адресу androidx.navigation.NavController.navigate (NavController.java:790) по адресу com.example.kotinmvvm.adapter.UserAdapter $ onBindViewHolder $ 1.onClick * 100 *. 100. User.apter

Код в User.kt:

class User {
    @SerializedName("id")
    @Expose
    var id: String = ""

    @SerializedName("name")
    @Expose
    var name: String = ""

    @SerializedName("image")
    @Expose
    var image: String = ""

    @SerializedName("desc")
    @Expose
    var desc: String = ""

    @SerializedName("sizes")
    @Expose
    val sizes = ArrayList<String>()
}

Данные JSON:

{
id: 43354,
desc: "Nobis voluptatibus est necessitatibus tempore voluptate voluptatibus. Illum suscipit nam et nostrum. Est exercitationem tempore pariatur nisi soluta iure.",
name: "Prof. Carmel Ebert III",
image: "https://lorempixel.com/640/640/?81469",
sizes: [
"UK7",
"UK8",
"UK9",
"UK10"
]}

Какие изменения необходимы для исправления этой проблемы?

Ответы [ 3 ]

0 голосов
/ 24 сентября 2019

Чтобы получить внутренний список изменений строковых объектов, попробуйте

  @SerializedName("sizes")
  @Expose
  var sizes : List<String>? = null
0 голосов
/ 24 сентября 2019

Попробуйте использовать этот класс

data class User(
    @SerializedName("desc")
    var desc: String = "",
    @SerializedName("id")
    var id: Int = 0,
    @SerializedName("image")
    var image: String = "",
    @SerializedName("name")
    var name: String = "",
    @SerializedName("sizes")
    var sizes: List<String> = listOf()
)

Вы можете легко преобразовать любые данные JSON в класс данных с помощью этого плагина

0 голосов
/ 24 сентября 2019

Трудно сказать, не увидев JSON.

Это, вероятно, должно быть:

val sizes: ArrayList<String>()

или попробуйте:

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