Android 載入本地圖片(檔案管理器中的圖片牆)
Android 載入本地圖片(檔案管理器中的圖片牆)
--關於圖片牆的一些感悟與疑問,希望大家共同探討。
(By伊葉也)
圖片顯示及監聽
1、圖片顯示:基本上就5種顯示形式(如果同時嵌入5種形式,採用什麼設計模式好些(策略模式?))
(1)縱向不規則堆放圖片
2-5列,建議以畫素大小為限(?),要為每一流進行標記(長度),[圖片壓縮採用縱向大小(?)為基本單位,進行等比例壓縮]
(2)橫向縱向不規則堆放圖片
採用自左到右、自上到下襬放策略(?)
(3)橫向不規則堆放圖片
(4)對圖片打包成圖片資料夾顯示
(5)gridView形式
2、對已經載入成功的圖片在ImageView中顯示動態效果。(開啟幾個執行緒?(是否考慮
3、圖片的點選效果的檢測(對已經載入的圖片設定監聽事件(經測試可行),每個圖片View設定響應事件,每個View下設定setTag(另外如果View在快取中已經消失,監聽是否還存在?)
圖片(縮圖)硬碟儲存
1、對每個圖片開啟執行緒進行圖片壓縮,並採用LRU演算法將圖片存入本地緩衝檔案,設定硬碟快取檔案大小,如果剩餘空間不足,將不快取。(最多60M(根據裝置可變動),剩餘空間不足60M,按照可用空間的1/3進行儲存)
2、本地快取縮圖的加密(如何加密??)
圖片(縮圖)記憶體儲存
如果記憶體足夠:使用LRU演算法將圖片存入記憶體中
(1)裝置可以為每個應用程式分配多大的記憶體?(如果剩餘空間較少,就載入可用記憶體的
(2)圖片被訪問的頻率有多高?會不會有一些圖片的訪問頻率比其它圖片要高?如果有的話,你也許應該讓一些圖片常駐在記憶體當中,或者使用多個LruCache 物件來區分不同組的圖片。(預設檔案圖示可以採用這種形式)
如果記憶體不足:_____(是否可以採用軟引用進行圖片載入??)
(3)裝置螢幕上一次最多能顯示多少張圖片?有多少圖片需要進行預載入,因為有可能很快也會顯示在螢幕上?
你的裝置的螢幕大小和解析度分別是多少?一個超高解析度的裝置比起一個較低解析度的裝置,在持有相同數量圖片的時候,需要更大的快取空間。
圖片載入
1、開啟執行緒檢測記憶體中是否含有該圖片(是否需要進行檢測原圖片??),如果存在,直接重新整理到
圖片刪除、新增、移動
1、進行硬碟緩衝圖片的增刪
2、進行記憶體緩衝圖片的增刪
圖片搜尋演算法:(何時啟用??(硬碟重新載入??(如果存在第三方軟體對圖片進行增刪改查,怎麼辦??))是否每次都啟用??)
1、根據快取圖片的目錄進行快速搜尋,然後對其他硬碟目錄進行n(多少合適??)層目錄搜尋,對存在圖片的目錄是否進行加深搜尋(多少合適??)
2、全域性遍歷搜尋:先對快取圖片的目錄進行搜尋,後進行全域性遍歷。
3、???
相關推薦
Android 載入本地圖片(檔案管理器中的圖片牆)
Android 載入本地圖片(檔案管理器中的圖片牆) --關於圖片牆的一些感悟與疑問,希望大家共同探討。 (By伊葉也) 圖片顯示及監聽 1、圖片顯示:基本上就5種顯示形式(如果同時嵌入5種形式,採用
在檔案管理器中顯示圖片的縮圖和視訊第一幀的縮圖
首先在vender/mediatek/properties/packags/apps/FileManager/src/com/mediatek/filemanager/IconManager.java中匯入兩個類import android.media.ThumbnailU
刪除Win10檔案管理器中的文件音樂視訊OneDrive快速訪問等
一、刪除Win10檔案管理器中的文件/音樂/視訊等在Windows 10下開啟這臺電腦,除了會顯示磁碟碟符外,在資源管理器上半部分還會顯示6個資料夾,這6個資料夾就像6個核桃一樣,對一些人有用,對一些人沒有用。有些強迫症的童鞋表示不能忍受,下面介紹怎樣刪除這幾個資料夾。環境:Windows10專業版開啟登錄檔
ubuntu 18.04視訊檔案無法在檔案管理器中預覽的解決辦法
手動升級到18.04之後發現視訊的預覽無法載入 不知道為什麼 後來查了一下,發現瞭解決辦法 首先我們先安裝如下包 sudo apt install ffmpegthumbnailer 之後我們刪除一
linux 修改檔案管理器中 資料夾名稱
方法一: 首先修改現有主資料夾下各資料夾名稱: Desktop、 Documents、 Download、 Music、 Pictures、 Public、 Templates、 Videos …… 然後編輯配置檔案: vim ~/.config/user-dirs.di
如何在Ubuntu檔案管理器中檢視隱藏檔案和資料夾
Ubuntu檔案管理器 本文介紹如何在Ubuntu 18.04 LTS系統上檢視Ubuntu檔案瀏覽器中的隱藏檔案和資料夾。您可以從Ubuntu桌面上的“活動”檢視訪問檔案瀏覽器。 檢視隱藏內容的最簡單方法是在檔案瀏覽器開啟時使用Ctrl + h組合鍵。在下圖中,您可以看到現在顯示的所有隱藏內容:
Android進入本地檔案管理器及不同檔案檢視
1、進入本地檔案(新增檔案): Intent intent = new Intent(Intent.ACTION_GET_CONTENT); intent.setType("*/*"); intent.addCategory(Intent.CATEGORY_OPENABLE
18、android中呼叫系統自帶檔案管理器並返回選中檔案的路徑
思路: 通過Android API呼叫系統自帶的檔案瀏覽器選取檔案獲得URI,然後將URI轉換成file,從而得到file。 import android.annotation.SuppressLint;import android.app.Activity;impo
android檔案管理器開發中遇到的一些問題
1.難點主要有如何獲取外掛裝置的資訊以及路徑無論是U盤還是TF卡等等 獲取方式在其他部落格中請自己檢視。 2.在Android6.0中想要對外部裝置進行的檔案的操作是比較難的 因為6.0中Android系統對外部儲存器操作的許可權進行了修改,所以只能進行讀操作,無法進行對外
UIWebView載入本地HTML檔案中有本地圖片的索引
// 013-11-18 16:58:23.959 Sports[480:907] imgPath:/var/mobile/Applications/D0233988-9785-465A-BF95-81DF334B367C/Sports.app/SPBGLogo.png // 2013-11-1
ANDROID中呼叫檔案管理器並返回選中檔案的路徑
package com.panhouye.selectfile; import android.annotation.SuppressLint; import android.app.Activity; import android.content.ContentUris; import android.c
如何刪除Windows10操作系統資源管理器中的下載、圖片、音樂、文檔、視頻、桌面、3D對象這7個文件夾
war reg ren 操作系統 esp 桌面 bcf pac cal 通過註冊表刪除,步驟如下: 1、按下win+R,輸入regedit,打開註冊表 2、找到位置:計算機\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Curr
Android Studio載入本地aar檔案
如果要在Android Studio中引用本地的aar檔案:mylib.aar,步驟如下: 1.在需要引用mylib.aar的Module,比如:MyModule的根目錄下新建目錄:libs,然後把mylib.aar複製到此目錄下。 2.在MyModule的build.gradle中,新增如下定
eclipse增加工程檔案在windows資源管理器中開啟
方法有二: 一: 1.點選configurations,不同版本可能不一樣,大概就在這裡啦 2. 按截圖填寫即可,最後點選run,就開啟當前檔案所在的目錄啦 第二種方法: 安裝pathtools外掛, 外掛在http://code.google.com/p/path
Windows 檔案資源管理器中搜索帶特殊字元檔名的方法
今天處理一些檔案,資料夾這包含有類似《~$16年普通高等學校招生全國統一考試-英語》的檔名,想全部找出來刪除掉,直接在檔案資源管理器裡面輸入“~$”是搜尋不到想要的檔案的,這些是特殊字元,所以,就想是不是像程式設計一樣也有轉義符之類的,就進行網上搜索和測試,終於找到解決辦法,輸入~"*~$*"即可搜
C#如何在資源管理器中開啟資料夾並定位檔案
private void OpenFolderAndSelectFile(String fileFullName) { System.Diagnostics.ProcessStartInfo psi = new System.Diagnostics.ProcessSt
HD檔案管理器 v0.1.3----- 一款介面簡約,功能強大的免費檔案管理器(Android)
Android平臺上具有完整功能的檔案管理,漂亮的UI介面設計以及良好的使用者體驗。 支援android 1.5及以上平臺 包括: * 將Linux平臺上最流行的圖示集之一 Faenza 作為檔案管理
android檔案管理器需求分析之一
(部分初稿) 正在做一個android檔案管理器,程式碼基本完成,但由於一直以來面向過程開發的,到後期程式碼量不斷增大,Bug頻繁出現,修改程式碼變得非常繁瑣、困難。 於是我想從需求分析開始重新對專案進行整合、編碼。 算是第一次寫需求分析,必然會出現很多Bug,希望前輩們能
Android呼叫系統自帶的檔案管理器,開啟指定路徑
一、開啟系統自帶的檔案管理器 if (!Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)) { showToast(R.string.msg_
【android】簡易檔案管理器(列表式檔案目錄)
、 核心程式碼: File fatherFile = new File(path); File[] files = fatherFile.listFiles(); 效果圖: