首页 > 解决方案 > 图像和视频的 getItemViewType

问题描述

我正在尝试 recyclerview 多种视图类型,例如图像查看器中的图像和视频查看器中的视频...当我使用此代码时一切正常

@Override
public int getItemViewType(int position) {
    //if (mediaObjects.get(position).getMedia_url().contains(".mp4")) {
    if (mediaObjects.get(position).getMedia_url().contains(".mp4")) {
        return 0;
    }
    return 1;

    
}

有没有最好的方法来实现这一点

标签: android

解决方案


我认为这个问题的答案是这样的

String filePath = "mediaName.mp4"; 
String type = someFilepath.substring(someFilepath.lastIndexOf("."));

或者

 ContentResolver contentResolver= getContentResolver();
 MimeTypeMap mimeTypeMap = MimeTypeMap.getSingleton();
 String type = mimeTypeMap.getExtensionFromMimeType(contentResolver.getType(uri));

推荐阅读