真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

Android加載長圖時如何按寬度填充

本篇內(nèi)容介紹了“Android加載長圖時如何按寬度填充”的有關(guān)知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細閱讀,能夠?qū)W有所成!

創(chuàng)新互聯(lián)建站成立于2013年,我們提供高端網(wǎng)站建設(shè)公司、成都網(wǎng)站制作、成都網(wǎng)站設(shè)計、網(wǎng)站定制、全網(wǎng)營銷推廣小程序設(shè)計、微信公眾號開發(fā)、成都網(wǎng)站推廣服務(wù),提供專業(yè)營銷思路、內(nèi)容策劃、視覺設(shè)計、程序開發(fā)來完成項目落地,為宣傳片制作企業(yè)提供源源不斷的流量和訂單咨詢。

使用庫

implementation 'com.davemorrissey.labs:subsampling-scale-image-view:3.5.0'

注意:不要放在ScrollView中,不然滑動可能會沖突。

那么加載長圖時,如何按寬度填充呢?

//下載圖片保存到本地
        Glide.with(this)
                .load(sUrl).downloadOnly(new SimpleTarget() {
            @Override
            public void onResourceReady(File resource, GlideAnimation glideAnimation) {
                // 將保存的圖片地址給SubsamplingScaleImageView,這里注意設(shè)置ImageViewState設(shè)置初始顯示比例
                imageView.setMinimumScaleType(SubsamplingScaleImageView.SCALE_TYPE_CENTER_CROP);
                imageView.setMinScale(getFitWidthScale(resource));//最小顯示比例
                imageView.setMaxScale(getFitWidthScale(resource));//最大顯示比例(太大了圖片顯示會失真,因為一般微博長圖的寬度不會太寬)
                imageView.setImage(ImageSource.uri(Uri.fromFile(resource)), new ImageViewState(getFitWidthScale(resource), new PointF(0, 0), 0));
            }
        });
// 計算縮放比例
    private float getFitWidthScale(File file) {
        WindowManager wm = this.getWindowManager();
        float windowWidth = wm.getDefaultDisplay().getWidth();
        return windowWidth / getImageWidth(file);
    }
    private float getImageWidth(File file) {
        BitmapFactory.Options options = new BitmapFactory.Options();
        options.inJustDecodeBounds = true;
        BitmapFactory.decodeFile(file.getAbsolutePath(), options);
        return options.outWidth;
    }

“Android加載長圖時如何按寬度填充”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識可以關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實用文章!


新聞名稱:Android加載長圖時如何按寬度填充
鏈接URL:http://weahome.cn/article/ijsdpp.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部