我在我的 Android 回收站视图中没有看到 mp3 文件名,而是看到了他们的链接
Posted
技术标签:
【中文标题】我在我的 Android 回收站视图中没有看到 mp3 文件名,而是看到了他们的链接【英文标题】:I am not seeing mp3 files name in my Android recycler view, instead I am seeing their links 【发布时间】:2019-09-04 12:20:45 【问题描述】:在我的 android 回收器视图中,我没有看到我想从 firebase 实时数据库中检索的 mp3 文件名。相反,我看到的是 mp3 链接。如何纠正这个问题?
我在 Firebase 文件存储中上传了一些 mp3 文件,这些 mp3 文件链接已添加到我的 Firebase 实时数据库中。当我在 Android 回收器视图中检索文件及其描述时,我得到了 mp3 文件的链接。但不是文件名。
其中包含 2 个文本视图的卡片视图的 XML 代码:
<android.support.v7.widget.CardView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_
android:layout_>
<LinearLayout
android:layout_
android:layout_
android:orientation="vertical"
android:background="#b7c8e9"
>
<TextView
android:layout_
android:layout_
android:text="song_file_name"
android:id="@+id/song_name"/>
<TextView
android:layout_
android:layout_
android:text="song_description"
android:id="@+id/song_desc"/>
</LinearLayout>
</android.support.v7.widget.CardView>
查看持有者java代码:
import android.content.Context;
import android.support.v7.widget.RecyclerView;
import android.view.View;
import android.widget.TextView;
public class SongViewHolder extends RecyclerView.ViewHolder
View mView;
public SongViewHolder(View itemView)
super(itemView);
mView = itemView;
public void setDetails(Context ctx, String song, String description)
TextView mSongTv = mView.findViewById(R.id.song_name);
TextView mSongDescTv = mView.findViewById(R.id.song_desc);
mSongTv.setText(song);
mSongDescTv.setText(description);
@Override
protected void onStart()
super.onStart();
FirebaseRecyclerAdapter<SongModel, SongViewHolder> firebaseRecyclerAdapter =
new FirebaseRecyclerAdapter<SongModel, SongViewHolder>(
SongModel.class,
R.layout.song_row,
SongViewHolder.class,
mRef
)
@Override
protected void populateViewHolder(SongViewHolder viewHolder, SongModel model, int position)
viewHolder.setDetails(getApplicationContext(), model.getSong(), model.getDescription());
;
mrecyclerView.setAdapter(firebaseRecyclerAdapter);
我还为歌曲和描述字段创建了 getter setter。
我需要显示 mp3 歌曲名称。不是它的链接,因为稍后我需要单击它们并播放。但我在回收站视图输出中看到了 mp3 链接。
DB Structure
Output coming with files link
【问题讨论】:
你好 Shivaraj Sajjan,当你想要存储数据(描述和歌曲)时,你需要存储歌曲的名称。我的意思是当你想要存储数据时,你也需要包含歌曲的名称。 您会看到歌曲名称和网址,对吧?有什么问题?请回复@AlexMamo @AlexMamo 我只想要原始文件名的 mp3 歌曲列表。这样我就可以添加 onclick 监听器和媒体播放器来进一步播放这些歌曲。 【参考方案1】:您的代码没有问题。数据库中的歌曲字段具有歌曲 URL。因此 URL 会显示在您的 recyclerView 中。您也可以将您的 mp3 元数据(例如艺术家姓名等)添加到您的数据库中。之后,您可以根据需要显示它们。
【讨论】:
我只想要原始文件名的 mp3 歌曲列表。这样我就可以添加 onclick 监听器和媒体播放器来进一步播放这些歌曲以上是关于我在我的 Android 回收站视图中没有看到 mp3 文件名,而是看到了他们的链接的主要内容,如果未能解决你的问题,请参考以下文章