Android DataBinding where trovare context?

Ho TextView per mostrare il tempo. Voglio utilizzare il plugin DataBinding di Android. Per il tempo di formattazione sto utilizzando il metodo DateUtils.formatDateTime (context, int, int) che richiede l'istanza Context. È ansible get il context include elemento? O devo usare la vecchia scuola?

Grazie

  • Come fare un conto alla rovescia Timer in android?
  • Mappe Android V2 newLatLngBounds con cuscinetto
  • Quale utilizzare: onSaveInstanceState vs onRetainNonConfigurationInstance?
  • Tablayout + visual pager non visualizza il frammento nella posizione 0
  • Android corretta pulire / smaltire
  • Nessun utente né il process corrente hanno android.permission.ACCESS_COARSE_LOCATION
  • Android: controlla se Servizi di ubicazioni abilitati utilizzando il provider di località connesso
  • Nuova attività in Android "entra dal lato"
  • Rendere l'attività animata dall'alto verso il basso
  • Come gonfiare più istanze di un layout con lo stesso ID all'interno di un layout gonfiato
  • Errore: l'esecuzione non è rioutput per l'attività ': app: transformClassesWithDexForDebug'. > com.android.build.api.transform.TransformException: valore di output non zero. 3
  • Cambiare la selezione in un ListView da Orange a Green
  • 2 Solutions collect form web for “Android DataBinding where trovare context?”

    Pensavo che dovrei rispondere invece di aggiungere un commento. Avrai più opzioni quando rc2 viene rilasciato. In rc1, è ansible passare il context in una variabile alla Binding, quindi passarlo come parametro al metodo. In alternativa, è ansible creare un attributo personalizzato per il binding dei dati:

    @BindingAdapter({"timeMillis", "dateFlags"}) public static void setDateText(TextView view, int timeMillis, int dateFlags) { view.setText(DateUtils.formatDateTime(view.getContext(), timeMillis, dateFlags)); } 

    E poi utilizzalo nel tuo TextView:

     <TextView ... app:timeMillis="@{timeVar}" app:dateFlags="@{dateFlags}"/> 

    Anche tu puoi fare qualcosa di simile nella tua vista utilizzando il context corrente di vista come parametro.

     ... android:text="@{yourModelHere.yourModelMethodHere(context)}" ... 
    L'Android è un fan Android di Google, tutto su telefoni Android, Android Wear, Android Dev e applicazioni Android Games e così via.