Привязка данных Android к фрагменту - PullRequest
0 голосов
/ 10 декабря 2018

Возможно ли связывание данных, дающее мне ссылку на фрагмент внутри макета активности?

У моей активности есть фрагмент в FrameLayout, и я получаю привязку данных следующим образом:

fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        val binding: ActivityUxBinding = DataBindingUtil.setContentView(this, R.layout.activity_ux)

Сгенерированный автоматически ActivityUxBinding не содержит члена для фрагмента, поэтому мне все еще нужно сделать следующее:

arFragment = supportFragmentManager.findFragmentById(R.id.ux_fragment) as ArFragment

Есть ли способ получить член uxFragment типа, указанного в макете?

Для справки, макет мероприятия:

<layout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto">
    <FrameLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent">
        <fragment android:name="edu.htw.cd.ar.objectdetect.sceneform.ArFragmentWithoutInstructions"
            android:id="@+id/ux_fragment"
            android:layout_width="match_parent"
            android:layout_height="match_parent" />
        <com.google.android.material.floatingactionbutton.FloatingActionButton
            android:id="@+id/search_fab"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="bottom|end"
            android:layout_margin="16dp"
            app:srcCompat="@drawable/ic_search"
            app:elevation="6dp" /> <!-- https://material.io/design/environment/elevation.html -->
    </FrameLayout>
</layout>
...