編輯:關於Android編程
有這樣一道面試題:
如何將SQLite數據庫(dictionary.db文件)與apk文件一起發布?
答: 把這個文件放在/res/raw目錄下即可。res\raw目錄中的文件不會被壓縮,這樣可以直接提取該目錄中的文件,會生成資源id。
那麼如何把raw文件下面的數據庫導入到安裝的程序中的database目錄下呢?public void imporDatabase() { //存放數據庫的目錄 String dirPath="/data/data/com.hkx.wan/databases"; File dir = new File(dirPath); if(!dir.exists()) { dir.mkdir(); } //數據庫文件 File file = new File(dir, "abc.db"); try { if(!file.exists()) { file.createNewFile(); } //加載需要導入的數據庫 InputStream is = this.getApplicationContext().getResources().openRawResource(R.raw.db_weather); FileOutputStream fos = new FileOutputStream(file); byte[] buffere=new byte[is.available()]; is.read(buffere); fos.write(buffere); is.close(); fos.close(); }catch(FileNotFoundException e){ e.printStackTrace(); }catch(IOException e) { e.printStackTrace(); } }
Toast大家都很熟,不多說。直接上圖上代碼。 具體代碼如下:main.xm
發現現在好多App都使用了透明狀態欄,眼紅了好久但是又懶得寫,但是。這高大上的狀態欄真的好有逼格啊,對於有點強迫症的我來說簡直不能忍,所以還是寫篇博客記錄一下,方便以後使
適配器模式的定義是:將一個類的接口,轉換成客戶期望的另一個接口,適配器讓原本接口不兼容的類可以作無間。看下以下兩張圖就更清楚了 適配器可以實現接口的解耦,如果過一段時
如果listitem裡面包括button或者checkbox等控件,默認情況下listitem會失去焦點,導致無法響應item的事件,最常用的解決辦法是在listitem