首页 > 解决方案 > 我如何设置列表中的值kotlin 中的构造函数参数

问题描述

我创建了一个 pojo 类,Account其中有一个Address类数组。我想address从我的主要片段中设置 's 参数的值。我该如何设置?请看我的Account模型代码,Address模型和我设置帐户模型数据的主要片段。

账户模型 (POJO)

class Account(
          var OrganizationName: String?,
          var Addresses: List<Address>?,) : Serializable {

constructor() : this(null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null)}

地址模型 (POJO)

class Address(
var Id: Int?,

var Name: String?,
var AddressLine1: String?,
var AddressLine2: String?,
var City: String?,
var Locality: String?,
var State: String?,
var ZipCode: Int?,
):Serializable

主要片段类,我在其中设置帐户和地址类参数的详细信息。

  class AccountDetailsFragment constructor
  (onCheckChanged: OnCheckChanged, changeTabs: ChangeTabs) : BaseFragment() {override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? {
    val view = inflater.inflate(R.layout.fragment_account_details, container, false)


    return view
}

 fun getFilledData(account: Account): Account {

    account.OrganizationName = "name"

    // How do i insert the value for address's parameters here.

    return account


}


}

标签: javaandroidkotlinretrofitpojo

解决方案


首先,您对变量使用了错误的命名约定。在这里阅读更多。

fun getFilledData(account: Account): Account {

    account.OrganizationName = "name"

    val addresses = ArrayList<Address>()
    for(i in 0..10){

        //create and  insert your multiple addresses here
        val address  = Address(i,"name $i","line1 $i","line2 $i ","city $i","locality $i","state $i ", i)

        addresses.add(address)
    }
    //assign list to account
    account.Addresses = addresses

    return account
}

推荐阅读