亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

從android中的文件路徑獲取內容uri

從android中的文件路徑獲取內容uri

冉冉說 2019-08-26 09:47:46
從android中的文件路徑獲取內容uri我知道圖像的絕對路徑(比如說/sdcard/cats.jpg)。這個文件的內容是否有任何方法?實際上在我的代碼中我下載了一個圖像并將其保存在特定位置。為了在ImageView中設置圖像,我使用路徑打開文件,獲取字節并創建位圖,然后在ImageView中設置位圖。這是一個非常緩慢的過程,相反,如果我可以獲得內容uri,那么我可以很容易地使用該方法 ImageView.setImageUri(uri)
查看完整描述

3 回答

?
瀟湘沐

TA貢獻1816條經驗 獲得超6個贊

試試:

ImageView.setImageURI(Uri.fromFile(new File("/sdcard/cats.jpg")));

或者:

ImageView.setImageURI(Uri.parse(new File("/sdcard/cats.jpg").toString()));


查看完整回答
反對 回復 2019-08-26
?
動漫人物

TA貢獻1815條經驗 獲得超10個贊

它來晚了,但將來可能會有所幫助。

要獲取文件的內容URI,您可以使用以下方法:

FileProvider.getUriForFile(Context context, String authority, File file)

它返回內容URI。

檢查一下,了解如何設置 FileProvider


查看完整回答
反對 回復 2019-08-26
?
元芳怎么了

TA貢獻1798條經驗 獲得超7個贊

你可以嘗試下面的代碼片段

    public Uri getUri(ContentResolver cr, String path){
    Uri mediaUri = MediaStore.Files.getContentUri(VOLUME_NAME);
    Cursor ca = cr.query(mediaUri, new String[] { MediaStore.MediaColumns._ID }, MediaStore.MediaColumns.DATA + "=?", new String[] {path}, null);
    if (ca != null && ca.moveToFirst()) {
        int id = ca.getInt(ca.getColumnIndex(MediaStore.MediaColumns._ID));
        ca.close();
        return  MediaStore.Files.getContentUri(VOLUME_NAME,id);
    }
    if(ca != null) {
        ca.close();
    }
    return null;}


查看完整回答
反對 回復 2019-08-26
  • 3 回答
  • 0 關注
  • 2886 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號