代码之家  ›  专栏  ›  技术社区  ›  mvasco

在recyclerview中使用远程媒体实现幻灯片放映的最佳方法

  •  0
  • mvasco  · 技术社区  · 5 年前

    我需要你的帮助来实现我当前应用程序的一部分。

    一个项目可能没有相关的媒体文件,也可能有多个相关的媒体文件。例如,项目#1有一个图像,项目#2有两个图像,项目#3有两个图像,一个视频和一个youtube视频,项目#4没有图像相关。

    我需要添加所有媒体相关的文件从每个项目作为幻灯片在每个项目视图。

       String mediapostfile []= mediafile.split(",");
    
            String mediaposttype []= mediatype.split(",");
    
            Hash_file_maps = new HashMap<String, String>();
            Log.d("estoy en el post ","estoy en el post id_post "+id_post);
            Log.d("estoy en el post ","estoy en el post id_post ****************");
    
    
            for ( int w=0  ;w < mediapostfile.length;w++){
                if (mediapostfile[w].equals("null")){
    
                    Hash_file_maps.put("vacio", url_postmedia+"noimage.jpg");
                    Log.d("estoy en el post ","estoy en el post sin imagen "+id_post);
    
                }
                else {
                    if (mediaposttype[w].equals("2")){
    
                        Hash_file_maps.put("video."+mediapostfile[w], url_postmedia+"esvideo.png");
                        Log.d("estoy en el post ","estoy en el post video "+id_post);
    
                    }
                    if (mediaposttype[w].equals("1")) {
    
                        Hash_file_maps.put("imagen."+mediapostfile[w], url_postmedia+mediapostfile[w]);
                        Log.d("estoy en el post ","estoy en el post imagen "+id_post);
    
                    }
                    if (mediaposttype[w].equals("3")){
    
                        Hash_file_maps.put("youtube."+mediapostfile[w], url_postmedia+"youtubevideo.png");
                        Log.d("estoy en el post ","estoy en el post youtube "+id_post);
    
                    }
                }
    
            }
            Log.d("estoy en el post ","estoy en el post id_post --------------------------");
    

    我已经包含了一些日志来验证每个项目是否接收到相关的媒体文件,并且这部分代码正在工作,这意味着每次在屏幕上显示一个项目时,都会列出相关的媒体文件。

    我需要知道最好的选择,我必须创建一个与每个项目相关的所有媒体幻灯片。

    0 回复  |  直到 5 年前
        1
  •  0
  •   Ramana V V K    5 年前

    与其使用视图寻呼机,不如使用一些定制的exoplayer,并根据需要添加click事件和监听器等。

    并使用添加多个图像和视频 ConcatenatingMediaSource

    使用 exoplayer-ui:x.x.x SimpleExoPlayerView 内置图像视图。 您可以使用xml中的默认\u artwork属性设置图像,例如:

    <com.google.android.exoplayer2.ui.SimpleExoPlayerView
        android:id="@+id/playerView"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        app:default_artwork="@drawable/default_media_artwork"
        app:use_artwork="true"/>
    

    希望对大家有用。