我在我的项目中导入了2个库(在gradle文件中):
...
/* Firebase UI */
compile 'com.firebaseui:firebase-ui:0.4.0'
/* Facebook login */
compile 'com.facebook.android:facebook-android-sdk:4.13.0'
Run Code Online (Sandbox Code Playgroud)
但在构建我的项目时,我有以下错误:
D:\ Android\Projects\quoter\app\src\main\AndroidManifest.xml:68:13-58错误:属性活动#com.facebook.FacebookActivity@theme value =(@ style/FirebaseUI.Translucent)来自[com. firebaseui:firebase-ui-auth:0.4.0] AndroidManifest.xml:68:13-58也出现在[com.facebook.android:facebook-android-sdk:4.13.0] AndroidManifest.xml:32:13- 72 value =(@ android:style/Theme.Translucent.NoTitleBar).建议:在AndroidManifest.xml:64:9-68:61中添加'tools:replace ="android:theme"'来覆盖.
我发现扩展的jar包含Facebook sdk和Firebase UI库的清单文件,但我不确定是否更改它们是解决此错误的正确方法,因为每次我清理并重新构建我的项目时,新的清单也是产生...
我该如何解决这个错误?在我看来,两个图书馆之间的不兼容......
注意:在我的应用程序中添加以下内容
<application
tools:node="replace"
Run Code Online (Sandbox Code Playgroud)
解决这个问题,但启动应用程序是不可能的,因为Firebase未正确初始化(请参阅/sf/answers/2664219071/)
android manifest facebook-sdk-4.0 firebase-authentication firebaseui
问题
我有一个通过FirebaseRecyclerAdapter在android中显示的项目的列表。我使用所有项目列表上的数据库引用创建此适配器(假设为“ posts”)。该帖子还会显示类别,如果用户单击类别,我想更新列表以仅显示该类别上的项目。
我尝试不起作用的解决方案我 在“类别”文本视图上放置了一个单击侦听器,当用户单击它时,我尝试使用新的数据库查询实例化一个新适配器,但是它不起作用。
其他想法:在adpater之外执行操作:创建一个新的Intent以重新启动该片段,并使用新的查询创建一个新的适配器
问题 有人遇到过这样的情况吗?在用户单击时,您想要过滤由adpater检索到的原始项目列表?最好的解决方案是什么?
细节
protected void populateViewHolder(final PostViewHolder viewHolder, final Post post, final int position) {
/* Set the post text, author and category */
viewHolder.postText.setText(post.getText());
viewHolder.postAuthor.setText(post.getAuthor());
viewHolder.postCategory.setText(post.getCategory());
/* Set a listener on category so that
I refresh data with only that category */
viewHolder.quoteCategory.setOnClickListener(new View.OnClickListener() {
Post selectedPost = getItem(position);
@Override
public void onClick(View v) {
String category = selectedPost.getCategory();
// !!!! NOW I HAVE TO CHANGE DATA SET !!! ///
Run Code Online (Sandbox Code Playgroud)
我想现在我可以使用带有正确Db参考的新适配器创建新的Fragment ...但这是最好的方法吗?有没有一种方法可以在传递另一个查询的填充视图中使用相同的Adapater?