Zoeken…


De afhankelijkheden toevoegen

FirebaseUI is gewoon een open-source bibliotheek van Google die eenvoudige UI-bindingen biedt voor Firebase Auth en Firebase Database.

Om te beginnen met het toevoegen van FirebaseUI aan uw app, voegt u deze afhankelijkheden toe in het build.gradle bestand van uw app:

android {
    // ...
}

dependencies {
    // Required for FirebaseUI Database
    compile 'com.google.firebase:firebase-database:9.4.0'
    compile 'com.firebaseui:firebase-ui-database:0.5.1'

    // FirebaseUI Auth only
    compile 'com.google.firebase:firebase-auth:9.4.0'
    compile 'com.firebaseui:firebase-ui-auth:0.5.1'

    // Single dependency if you're using both
    compile 'com.firebaseui:firebase-ui:0.5.1'
}

apply plugin: 'com.google.gms.google-services'

Een lijstweergave vullen

Ervan uitgaande dat u al een app in Android Studio hebt ingesteld, voegt u een ListView aan een lay-out (of slaat u over als dat al is gebeurd):

<?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

<!-- Your toolbar, etc -->

<ListView
    android:id="@+id/list_view"
    android:layout_width="match_parent"
    android:layout_height="wrap_content" />

</android.support.design.widget.CoordinatorLayout>

Laten we nu een model maken voor de gegevens waarmee we onze ListView gaan vullen met:

public class Person {

    private String name

    public Person() {
        // Constructor required for Firebase Database
    }

    public String getName() {
        return name;
    }

}

Zorg ervoor dat uw ListView een ID heeft, maak er vervolgens een verwijzing naar in uw Activity en stel de adapter in op een nieuwe FirebaseListAdapter :

public class MainActivity extends AppCompatActivity {

    // ...

    private ListView mListView;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
    
        // Find the ListView
        mListView = (ListView) findViewById(R.id.list_view);
    
        /* 
         * Create a DatabaseReference to the data; works with standard DatabaseReference methods
         * like limitToLast() and etc.
         */
        DatabaseReference peopleReference = FirebaseDatabase.getInstance().getReference()
            .child("people");

        // Now set the adapter with a given layout
        mListView.setAdapter(new FirebaseListAdapter<Person>(this, Person.class,
                android.R.layout.one_line_list_item, peopleReference) {

            // Populate view as needed
            @Override
            protected void populateView(View view, Person person, int position) {
                ((TextView) view.findViewById(android.R.id.text1)).setText(person.getName());
            }
        });
    }
}

Nadat je dat hebt gedaan, voeg je wat gegevens toe aan je database en zie je hoe de ListView zichzelf vult.



Modified text is an extract of the original Stack Overflow Documentation
Licentie onder CC BY-SA 3.0
Niet aangesloten bij Stack Overflow