Java 如何使用Firebase结果检索ListView中的位置

Java 如何使用Firebase结果检索ListView中的位置,java,android,firebase,firebase-realtime-database,Java,Android,Firebase,Firebase Realtime Database,我使用FirebaseAdapter或任何firebaseui依赖项而不是,我现在已经将其完全本地化了,但是我在这一行尝试传递额外信息时遇到了一个问题: mRootDatabase=getAdapter(mContext).getItem(位置) 必需的数据库引用,找到UserPojo 谢谢 要解决此问题,您需要更改以下代码行: mRootDatabase = getAdapter(mContext).getItem(position); 到 其中,adapter变量是用于显示数据的实际适配器

我使用
FirebaseAdapter
或任何
firebaseui
依赖项而不是,我现在已经将其完全本地化了,但是我在这一行尝试传递额外信息时遇到了一个问题:

mRootDatabase=getAdapter(mContext).getItem(位置)

必需的数据库引用,找到UserPojo


谢谢

要解决此问题,您需要更改以下代码行:

mRootDatabase = getAdapter(mContext).getItem(position);

其中,
adapter
变量是用于显示数据的实际适配器

编辑:


您不能使用
getRef()
方法,除非您使用的是Firebase UI库。无法从
ArrayAdapter
对象获取
DatabaseReference
对象。此类中的任何对象都不会返回
数据库引用
对象。实现此目的的唯一方法是使用库。

要解决此问题,需要更改以下代码行:

mRootDatabase = getAdapter(mContext).getItem(position);

其中,
adapter
变量是用于显示数据的实际适配器

编辑:


您不能使用
getRef()
方法,除非您使用的是Firebase UI库。无法从
ArrayAdapter
对象获取
DatabaseReference
对象。此类中的任何对象都不会返回
数据库引用
对象。实现这一点的唯一方法是使用库。

看起来您试图将Pojo分配给数据库引用,而需要将其分配给实际的Pojo并以这种方式引用它 像这样的

UserPojo User = adapter.getItem(position);

看起来您正试图将Pojo分配给数据库引用,相反,您需要将其分配给实际的Pojo并以这种方式引用它 像这样的

UserPojo User = adapter.getItem(position);

嘿,亚历克斯,我要试试!昨天下班了,把这个留在办公室,会注意到你:)getRef不工作,因为我没有使用FirebaseListAdapter,让我在问题中解释更多,只是更新了我如何获得adapter@Todd是的,我想会的。试试看,让我保持联系。我的getAdapter返回一个ArrayAdapter刚刚尝试了adapterView,但它似乎无法应用于mRootDatabase=adapterView…嘿,Alex,我正要尝试!昨天下班了,把这个留在办公室,会注意到你:)getRef不工作,因为我没有使用FirebaseListAdapter,让我在问题中解释更多,只是更新了我如何获得adapter@Todd是的,我想会的。尝试一下,并随时通知我。my getAdapter返回ArrayAdapter刚刚尝试了adapterView,但它似乎无法应用于mRootDatabase=adapterView…这适用于获取列表中项目的位置,但不适用于数据库引用,由于my getKey无法获取已单击的用户,因此此选项适用于获取列表中项目的位置,但不适用于数据库引用,因为my getKey无法获取已单击的用户
UserPojo User = adapter.getItem(position);