【问题标题】:Android studio Glide安卓工作室滑翔
【发布时间】:2020-06-26 00:52:58
【问题描述】:

有人可以帮我处理这个 Mediadata Retriever 吗?

================================================ ==================================================== =======

LogCat:

    Process: com.musicapp.android.musicapp, PID: 8376
        java.lang.IllegalArgumentException
            at com.musicapp.android.musicapp.MusicCustomAdapter.getSongArt(MusicCustomAdapter.java:87)
com.musicapp.android.musicapp.MusicCustomAdapter.onBindViewHolder(MusicCustomAdapter.java:42)

代码:

    @Override
    public void onBindViewHolder(@NonNull ViewHolder holder, final int position) {
        holder.artist_Name.setText(newSong_list.get(position).getArtist_Name());
        holder.songTitle.setText(newSong_list.get(position).getSongTitle());
        holder.songDuration.setText(newSong_list.get(position).getSongDuration());
 42       byte[] image = getSongArt(newSong_list.get(position).getPath());
        if (image != null){
            Glide.with(context)
                    .asBitmap()
                    .load(image)
                    .into(holder.SongCover);
        }else{
            Glide.with(context)
                    .load(R.drawable.allsongs)
                    .into(holder.SongCover);
        }


=============================================================================

        private byte[] getSongArt(String uri){
            MediaMetadataRetriever mediaMetadataRetriever = new MediaMetadataRetriever();
    87        mediaMetadataRetriever.setDataSource(uri);
            byte[] art = mediaMetadataRetriever.getEmbeddedPicture();
            mediaMetadataRetriever.release();
            return art;
        }

【问题讨论】:

    标签: java android android-studio android-layout android-fragments


    【解决方案1】:

    试试这个 其他向我展示您的代码。

        @Override
        public void onBindViewHolder(@NonNull ViewHolder holder, final int position) {
            holder.artist_Name.setText(newSong_list.get(position).getArtist_Name());
            holder.songTitle.setText(newSong_list.get(position).getSongTitle());
            holder.songDuration.setText(newSong_list.get(position).getSongDuration());
    
    String image = newSong_list.get(position).getPath());
            if (image != null){
                Glide.with(context)
                        .asBitmap()
                        .load(image)
                        .into(holder.SongCover);
            }else{
                Glide.with(context)
                        .load(R.drawable.allsongs)
                        .into(holder.SongCover);
            }
    

    【讨论】:

    • 谢谢先生!我试过了,但是图像没有加载......我做了一个 Toast,我看到图像变量不为空
    猜你喜欢
    • 2013-07-08
    • 2017-04-17
    • 2014-04-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多