第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

如何在 RecyclerView 中創(chuàng)建異構(gòu)布局?

如何在 RecyclerView 中創(chuàng)建異構(gòu)布局?

慕哥6287543 2021-10-06 10:46:13
我希望用戶以任何順序選擇圖像、pdf 和任何其他文檔,并將它們放在 recyclerView 中。我對(duì)他們每個(gè)人都有不同的布局。到目前為止,我正在從所選圖像或 pdf 中獲取 Uri 和文件名,并將它們放入列表中。@Override        protected void onActivityResult(int requestCode, int resultCode, Intent data) {            super.onActivityResult(requestCode, resultCode, data);            if(requestCode == CHOOSE_IMAGE && resultCode == Activity.RESULT_OK){    if (data.getData()!=null){                    uriDocument = data.getData();    }    String filename = getFilename(uriDocument);                    fileNameList.add(filename);                    mAdapter.notifyDataSetChanged();    }else if (requestCode == PICK_ATTACHMENT && resultCode == RESULT_OK && data != null && data.getData() != null){                uriDocument= data.getData();                String filename = getFilename(uriDocument);                fileNameList.add(filename);                mAdapter.notifyDataSetChanged();            }        } 我有一個(gè)適配器類,它現(xiàn)在只包含一個(gè)布局:@NonNull    @Override    public ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {        View view;        view = LayoutInflater.from(parent.getContext()).inflate(R.layout.item_image_message, parent, false);        return new ViewHolder(view);    }這是 getFilename() 方法:public String getFilename(Uri uri){        String result =null;        if (uri.getScheme().equals("content")){            Cursor cursor = getContentResolver().query(uri,null,null,null,null);            try{                if (cursor!=null&&cursor.moveToFirst()){                    result = cursor.getString(cursor.getColumnIndex(OpenableColumns.DISPLAY_NAME));                }            }finally {                cursor.close();            }        }        if (result == null){            result = uri.getPath();            int cut = result.lastIndexOf("/");            if (cut!=-1){                result = result.substring(cut+1);            }        }        return result;    }如何根據(jù)文檔的類型(即圖像或 pdf)制作兩種不同的布局?
查看完整描述

2 回答

?
暮色呼如

TA貢獻(xiàn)1853條經(jīng)驗(yàn) 獲得超9個(gè)贊

首先,您必須清楚如何區(qū)分不同的文件。即來自文件名或其他字段。

現(xiàn)在您可以使用以下兩種解決方案中的任何一種: 1. 在 RecyclerView 的適配器中使用多種視圖類型。 2. 如果你只需要為不同的文件顯示不同的圖標(biāo),那么你可以通過添加一些檢查來做到這一點(diǎn)。


查看完整回答
反對(duì) 回復(fù) 2021-10-06
  • 2 回答
  • 0 關(guān)注
  • 209 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)