Frage Android-Datenbindung SetSupportActionBar


Hallo, ich frage mich, ob es ein XML-Tag für diese Funktion mit Android Data Binding Library oder wie dies ohne findViewById () -Methode zu erreichen ist

Danke


5
2018-01-06 15:36


Ursprung


Antworten:


Sie können auf die Instanz der Symbolleiste zugreifen Ansichten nach ID verwenden Funktion

<android.support.v7.widget.Toolbar
            android:id="@+id/toolbar"
            android:layout_width="match_parent"
            android:layout_height="?attr/actionBarSize"
            android:background="?attr/colorPrimary"
            app:layout_scrollFlags="scroll|enterAlways"
            app:popupTheme="@style/AppTheme.PopupOverlay" />

dann auf deinem onCreate() Methode Folgendes tun

ActivityGalleryBinding binding = DataBindingUtil
    .setContentView(this, R.layout.activity_gallery);
binding.setViewModel(new GalleryModel(this));
//set it like this
setSupportActionBar(binding.<location>.<of>.<your>.toolbar);

wenn sich Ihre Symbolleiste in einer anderen XML-Komponente befindet (auf die verwiesen wird) <include/>) Sie können immer noch darauf zugreifen, solange Sie angeben und @id zum <include/>


10
2018-04-07 02:32



Machen Projekt in Android Studio dann können Sie den folgenden Code für den Zugriff auf die Symbolleiste verwenden:

ActivityMainBinding binding = DataBindingUtil.setContentView(this, R.layout.activity_main);
setSupportActionBar(binding.toolbar);

0
2017-09-14 08:25



<layout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:bind="http://schemas.android.com/apk/res-auto"
    >
  <data>
    <variable
        type="com.example.viewModel"
        name="viewModel"
        />
  </data>
  <android.support.v7.widget.Toolbar
      android:layout_width="match_parent"
      android:layout_height="?actionBarSize"
      app:title="@{viewModel.title}"/>
</layout>

0
2018-06-16 09:07