android - 无法解析符号 'FirebaseListAdapter'

标签 android firebase firebase-realtime-database

尝试为我的 ListView 创建 FirebaseListAdapter 时发现问题,我想从 Firebase 实时数据库填充它。 Android Studio 说 Cannot resolve symbol 'FirebaseListAdapter' , 当我聚焦时 FirebaseListAdapter<Trick> adapter = new FirebaseListAdapter<Trick>(options){} .与 FirebaseListOptions<Trick> options = new FirebaseListOptions.Builder<Trick>(){} 相同

根据重复的问题进行了所有更改,包括更新 build.gradle,但没有任何帮助

我项目的build.gradle:

buildscript {
    repositories {
        google()
        jcenter()

    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.4.0'
        classpath 'com.google.gms:google-services:4.2.0'

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}
allprojects {
    repositories {
        google()
        jcenter()
        maven { url 'https://jitpack.io' }

    }
}

task clean(type: Delete) {
    delete rootProject.buildDir
}

我的应用的 build.gradle:

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

android {
    compileSdkVersion 28
    defaultConfig {
        applicationId "cz.zelgadiss.myapplication"
        minSdkVersion 16
        targetSdkVersion 28
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    implementation 'com.android.support:appcompat-v7:28.0.0'
    implementation 'com.android.support.constraint:constraint-layout:1.1.3'
    implementation 'com.android.support:support-v4:28.0.0'
    implementation 'com.google.firebase:firebase-auth:16.2.1'
    implementation 'com.google.firebase:firebase-core:16.0.8'
    implementation 'com.google.firebase:firebase-database:16.1.0'
    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'com.android.support.test:runner:1.0.2'
    androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
    implementation 'com.github.GwonHyeok:StickySwitch:0.0.15'
    implementation 'com.github.medyo:fancybuttons:1.9.1'

}

我的代码:

import com.google.firebase.database.FirebaseDatabase;
import com.google.firebase.database.Query;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.ListView;
import android.widget.TextView;

public class EncyActivity extends AppCompatActivity  {


    ListView list_View;

    protected void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_ency);

        Query query = FirebaseDatabase.getInstance().getReference().child("Tricks");
        list_View = (ListView) findViewById(R.id.listview);
        FirebaseListOptions<Trick> options = new FirebaseListOptions.Builder<Trick>()
                .setLayout(R.layout.trick)
                .setQuery(query, Trick.class)
                .build();

        FirebaseListAdapter<Trick> adapter = new FirebaseListAdapter<Trick>(options) {
            @Override
            protected void populateView(View v, Object model, int position) {
                Trick trick = (Trick) model;
                TextView name = v.findViewById(R.id.name);
                TextView description = v.findViewById(R.id.description);

                name.setText(trick.getName().toString());
                description.setText(trick.getDescription().toString());


            }
        };
        list_View.setAdapter(adapter);
    }
    @Override
    protected void onStart(){
        super.onStart();
        adapter.startListening();
    }
    @Override
    protected void onStop(){
        super.onStop();
        adapter.stopListening();
    }
}

最佳答案

为了使用 FirebaseListAdapter,您需要导入 Firebase UI

https://github.com/firebase/FirebaseUI-Android

    // FirebaseUI for Firebase Realtime Database
    implementation 'com.firebaseui:firebase-ui-database:4.3.2'

    // FirebaseUI for Cloud Firestore
    implementation 'com.firebaseui:firebase-ui-firestore:4.3.2'

也检查这个

https://github.com/firebase/FirebaseUI-Android/blob/master/database/README.md#using-the-firebaserecycleradapter

关于android - 无法解析符号 'FirebaseListAdapter',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55992570/

相关文章:

javascript - 在发送到后端时显示数据

android - getContactsFromFirebase() 方法返回一个空列表

java - Android Studio 无法启动(JDK 而不是 JRE)

java - 使用 URL 下载图像

swift - 延迟Google Cloud功能

firebase - 使用Firebase从存储在变量中的字符串中获取文档

swift - 嵌套 for 循环中的多个异步请求

android - 提取 YouTube MP4 URL 是否算作视频的新观看次数

android - 检查是否启用了锁定

ios - Firebase Offline,确定项目是否保存到服务器而不仅仅是本地缓存