如何从同伴对象获取数据 [英] How to get data from companion object

查看:75
本文介绍了如何从同伴对象获取数据的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试使用动态数据进行布局,但是我很难从同伴对象中获取数据

 程序包br.com.mirabilis.tab导入android.os.Bundle导入android.view.LayoutInflater导入android.view.View导入android.view.ViewGroup导入androidx.fragment.app.Fragment导入kotlinx.android.synthetic.main.fragment_one.*class FragmentGeneric:Fragment(){重写fun onCreateView(充气机:LayoutInflater,容器:ViewGroup ?,savedInstanceState:捆绑吗?): 看法?=.inflate(R.layout.fragment_one,container,false)重写fun onViewCreated(view:View,savedInstanceState:Bundle?){super.onViewCreated(view,savedInstanceState)tvIsi.setText(data)//不解析数据}伴随对象{有趣的newInstance(data:String):FragmentGeneric = FragmentGeneric()}} 

感谢任何想要帮助的人.

解决方案

使用此命令将参数发送给片段

 伴侣对象{fun newInstance(data:String):MyFragment {val f = MyFragment()//将索引输入作为参数传递.val args = Bundle()args.putString("data",数据)f.setArguments(args)返回f}} 

并获取这样的参数

  val args =参数val index = args.getString("data",") 

有关更多详细信息,请参见

I'm trying to make a tablayout with dynamic data, and I'm having trouble to get data from the companion object

package br.com.mirabilis.tab

import android.os.Bundle
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import androidx.fragment.app.Fragment
import kotlinx.android.synthetic.main.fragment_one.*

class FragmentGeneric : Fragment() {

    override fun onCreateView(
        inflater: LayoutInflater,
        container: ViewGroup?,
        savedInstanceState: Bundle?
    ): View? =
        inflater!!.inflate(R.layout.fragment_one, container, false)

    override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
        super.onViewCreated(view, savedInstanceState)

        tvIsi.setText(data) //not resolve data
    }


    companion object {
        fun newInstance(data : String): FragmentGeneric = FragmentGeneric()
    }
}

Thank you for anyone who wants to help.

解决方案

Use this to send arguments to fragment

companion object {
fun newInstance(data: String): MyFragment {
    val f = MyFragment ()
    // Pass index input as an argument.
    val args = Bundle()
    args.putString("data", data)
    f.setArguments(args)
    return f
  }
}

And get arguments like this

val args = arguments
val index = args.getString("data", "")

for more details refer this

这篇关于如何从同伴对象获取数据的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆