1. 程式人生 > >Android載入超長圖(微博長圖)

Android載入超長圖(微博長圖)

對於一些需要載入超長圖需求的同學,可能一開始使用使用bitmap或者inputstream轉bitmap(或類似載入庫)會發現出現圖片太大載入不出來的問題(其實我也是遇到了這個問題ヽ(≧Д≦)ノ)。解決問題的思路可以參考Coding_the_world封裝自己的庫(然而我太菜了,就在網上找了一些開源庫),比較流行的是Subsampling Scale Image View,而且裡邊封裝了縮放功能。

實現思路是:使用glide把圖片下載到本地(由於我使用的就是glide圖片載入庫),然後賦值。具體的操作如下:

1.新增依賴

com.davemorrissey.labs:subsampling-scale-image-view:3.5
.0

2.具體程式碼

imageView = (SubsamplingScaleImageView) findViewById(R.id.imageView);

imageView.setMinimumScaleType(SubsamplingScaleImageView.SCALE_TYPE_CUSTOM);

imageView.setMinScale(1.0F);

finalString testUrl ="http://cache.attach.yuanobao.com/image/2016/10/24/332d6f3e63784695a50b782a38234bb7/da0f06f8358a4c95921c00acfd675b60.jpg"
; //下載圖片儲存到本地 Glide.with(this)             .load(testUrl).downloadOnly(new SimpleTarget<File>() {             @Override             public void onResourceReady(File resource, GlideAnimation<? super File> glideAnimation) {                   // 將儲存的圖片地址給SubsamplingScaleImageView,這裡注意設定ImageViewState設定初始顯示比例              imageView.setImage(ImageSource.uri(Uri.fromFile(resource)), new ImageViewState(2.0F, new PointF(0, 0), 0));     }});

個人app 效果圖



下載地址:微影
github:Ghost
歡迎大家下載和Star

相關推薦

Android載入超長

對於一些需要載入超長圖需求的同學,可能一開始使用使用bitmap或者inputstream轉bitmap(或類似載入庫)會發現出現圖片太大載入不出來的問題(其實我也是遇到了這個問題ヽ(≧Д≦)ノ)。解決問題的思路可以參考Coding_the_world封裝自己的庫(然而我

Android 開啟外部應用/信/QQ等

跳轉微信首頁 Intent intent = new Intent(); ComponentName cmp = new ComponentName("com.tencent.mm","com.tencent.mm.ui.LauncherUI"); int

楊超越爬蟲文字+圖片粉絲資訊待續

# -*- coding: utf-8 -*- import urllib.request import json import time import random from urllib.request import urlopen from bs4 import BeautifulSoup im

Python爬蟲scrapy框架Cookie池Cookie池的使用

下載程式碼Cookie池(這裡主要是微博登入,也可以自己配置置其他的站點網址) 下載安裝過後注意看網頁下面的相關基礎配置和操作!!!!!!!!!!!!! 自己的設定主要有下面幾步: 1、配置其他設定 2、設定使用的瀏覽器 3、設定模擬登陸

Android 使用shareSDK進行第三方登入失敗解決方法信,,qq

這幾天在搞第三方登入,由於ios版本的要早於android版,所以各大平臺上的賬號都是註冊稽核好的。 登入到平臺,新增android版本,加入shareSDK,原本想著很輕鬆,誰知道一測試全部失敗,都不能登入。 驗證了新增流程,驗證了各大平臺的key  都沒有問題。 於是去

Android GridView擴充套件仿動態新增刪除圖片

在平時的開發中,我們會看到不管是微信發朋友圈照片還是微博釋出新鮮事,新增圖片的時候都是選完後面還有個+號再去選擇圖片,這樣的話比較方便使用者去新增圖片,有的右上角還有個-號方便使用者去刪除圖片,而一般使用者選擇的圖片多少都是不定的,我們只限制最大張

Hadoop單點部署與案例開發用戶數據分析

環境搭建 hadoop 數據分析 微博用戶 一、環境搭建1、Hadoop運行環境搭建1.1 安裝虛擬機(1)下載並安裝VMware虛擬機軟件。(2)創建虛擬機,實驗環境虛擬機配置如下圖所示。(3)安裝Ubuntu系統,安裝結果如下圖所示。1.2 配置JDK環境下載並安裝JDK,安裝結束後需對

指標的大小到底是由誰決定?是多少?轉載至羽然的部落格如果不能轉載,請聯絡刪掉

原文連結:http://blog.sina.com.cn/s/blog_4fd9844201010n3v.html 應該說這是一個非常基礎的問題,教科書上說指標大小和機器字長相同,即32位機指標長度為4位元組!但是對不對呢?為什麼是這樣?   搜了一下相關資料。。。居然發現回答不統一,很多人

python爬取

平時沒事就喜歡刷刷微博,追追星,關注關注娛樂圈動態順便看看老婆們的最新動態,每次看到老婆們發的新圖就很幸福,於是就想寫個爬蟲把老婆們的微博配圖給爬下來,一般爬到的不是自拍就是表情包,還是收穫滿滿的。 因為最近學到了一句話:不要重複造輪子。所以第一當然是去看一看有沒有別的寫出來的成品,然

android studio建立assets目錄並且利用webView載入其htmlby 星空武哥

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!        

[Chrome Headless + Python] 截 Take Full-page Screenshot

# -*- coding: utf-8 -*- import time import os from selenium import webdriver from selenium.webdriver.common.keys import Keys jenkinsJobName=os.getenv(

swift/iOS: PBItemCollectionServicer connection disconnected.分享

iOS程式中中使用的時web微博分享-關閉介面時出錯(程式崩潰) 解決:方法1. 更新最新的SDK 方法2. 1》、我的應用->高階資訊,沒有加授權回撥地址:https://api.weibo.com/oauth2/default.html 2》、授權回撥地址必須和程式中一致。

android 介面截目前速度最快

android 介面截圖不算新鮮事,以前本人也寫過一篇關於螢幕截圖的部落格,當時的需求是整體截圖,然後對特有的區域進行二次截圖,功能算是實現了,體驗不是很好 ,週期太長。雖然使用者感受不到,但是作為一個強迫症的程式設計師。會花時間追求更快的體驗。 以前的截圖是採用anr

Cloudera Manager 和CDH6.0.1安裝,解除安裝,各步驟截文為筆者辛苦勞作最終生成的,使用了3個熬到凌晨2~4點的夜晚,外加一個週末完成,請轉載時記錄轉載之處,謝謝

1 Cloudera 文件總地址 https://www.cloudera.com/documentation/enterprise/6/6.0.html 2 Cloudera Manager 和CDH下載地址 Cloudera Manager下載地址: https://a

Android APP整合新浪分享功能

新浪微博分享功能整合 直接匯入weibosdkcore.jar:適用於只需要授權、分享、網路請求框架功能的專案。 無論使用哪一種方式,都需要先將demo中lib目錄下的對應的全部 libweibosdkcore.so檔案目錄拷貝到你的目標工程中Demo。

Java和PHP兩種方式實現上傳圖片到新浪

這幾天遇到一個需求,需要將圖片上傳到新浪微博的圖傳,研究了一下, 特此記錄1.模擬登陸,獲取cookie登入地址為:https://login.sina.com.cn/sso/login.php?client=ssologin.js(v1.4.15)&_=140313

React Native (IOS和Android) 支付寶和信支付整合實戰信IOS篇

序言:React Native無論是在社群和應用程度上,在國內外是十分廣泛和普及的。而支付寶和微信在支付模組上都有或多或少的支援,雖然沒有完整的Demo,不過在我做過一個相關整合的專案後,在此我把相關的步驟和方法總結出來和大家分享,希望能夠幫助大家少走彎路,快速整合。 微信

判斷瀏覽器信、、QQ、作業系統、橫豎屏等

var browser = { versions: function() { var u = navigator.userAgent; return {//移動終端瀏覽器版本資訊 trident: u.indexOf('Trident') > -1, //IE核

Android 輪播Viewpager+Handler定時器

發現好多人提到banner,第一個想法就是擼個第三方依賴。然後出bug了,開啟三方程式碼,一堆檔案無從下手,改了又擔心出現新bug,然後又替換了第二個三方… 一個ViewPager能實現的功能,何必求助第三方。 Banner的實現技術點主要在於 1

scrapy 設定代理ip和cookies

pipelines.py程式碼from fake_useragent import UserAgent import requests class UserAgentMiddlewares(object): """ 自定義一個UserAgent的下載中介軟體。