Отправить интерфейс прослушивателя или лямбда-функции в пункт назначения на графике навигации Android - PullRequest
0 голосов
/ 26 сентября 2019

Поэтому, когда я использовал frameLayout для обмена фрагментами с помощью диспетчера фрагментов, я мог сделать что-то вроде этого, чтобы отправить аргументы в новый выдвинутый фрагмент

class TestFragment : GenericFragment(R.layout.test_fragment) {

    private var arg1: Int = 0
    private lateinit var onResult : ( () -> Unit )

    companion object {
        fun newInstance(arg1 : Int, onResult: ( () -> Unit )) = TestFragment().apply {
            this.arg1 = arg1
            this.onResult = onResult
        }
    }
}

frag = TestFragment.newInstance(1) {
    //some stuff to do when finished
}

val transaction = supportFragmentManager.beginTransaction()
transaction.replace(content.id, frag, tag)
transaction.commitAllowingStateLoss()   

Вопрос в том, как мне сделать это с аркойкомпоненты навигации ( android.arch.navigation: навигация ).Я обнаружил, что вы можете отправлять только примитивные типы или некоторые типы Serializable.

...