一、dp 和 sp 的區別
由於手機螢幕解析度各有不同,而且無法調整當前手機的解析度,因此,android sdk提供了dp 和 sp 兩個尺寸單位來根據解析度調整元件和字型的大小。dp 和 sp 都是相對於160 dpi 的尺寸單位的。160 dpi 相當於每英吋螢幕上有160個物理畫素點,一般320*480 或里誒死大小的解析度的螢幕都是160 dpi 。因此,如果程式執行在帶160 dpi 螢幕的手機上,dp、sp 和px的效果是一樣的。但如果是更高解析度的螢幕,如240 dpi (一般是480 * 800 解析度的螢幕),px仍然會根據實際物理畫素處理,而dp 和 sp 會用當前值乘以乙個係數(240 / 160 =1.5)。例如,如果兩個按鈕的 android:layout_width 屬性值分辨設為160 px 和 160 dp,在
320 * 480 解析度的螢幕上,按鈕的寬度是完全相同的,但在480 * 800 解析度的螢幕上寬度為160dp 的按鈕的實機寬度就變為 240 px(240個畫素點),會比寬度160 px的按鈕寬50% 。在不同解析度螢幕上顯示的效果如下圖所示
sp 不僅可以按螢幕密度對尺寸進行調整,還可以按著使用者設定的不同字型調整文字的尺寸,使文字以最好的效果顯示。因此建議設定文字大小時使用sp,設定其他尺寸是使用dp。
二、drawable資源問題
drawable 目錄不僅可以儲存普通的影象資源,還可以儲存xml影象資源。影象狀態資源就是其中之一。與影象狀態資源類似的還有淡入淡出資源和影象級別資源。其中淡入淡出資源只允許在兩個影象之間進行切換,只是在兩個影象之間採用了淡入淡出效果進行切換。影象級別資源可以為更多的影象定義級別,但需要使用**進行控制。在drawable目錄中的各種資源都可以使用類似android:src、android:background 這樣的屬性指定。
淡入淡出資源檔案的例子**如下;
<?xml version="1.0" encoding="utf-8"?>
影象級別資源**如下:
<?xml version="1.0" encoding="utf-8"?>
其中影象級別資源中的每乙個標籤標示乙個級別區間。級別區間用android:minlevel 和android:maxlevel屬性設定。setimagelevel 或setlevel 方法設定的幾倍在某個區間內(android:minlevel<= level<=android:maxlevel),系統就會先用按個區間對應的影象(用android:drawable屬性設定)。可以使用如下**設定元件的影象級別。
imageview ivlamp = findviewbyid(r.id.iv0001);
//設定level 為8,顯示lamp_off.png
ivlamp.setimagelevel(8);
注:如上內容摘取自《anroid 高薪程式設計師面試寶典一書》 DBN RBM 涉及的基礎知識
先說一下rbm restricted boltzmann machine 是指受限玻爾茲曼機,是一種基於隨機神經網路來解釋的概率圖模型。hinton在2016年提出dbn deep belief network 後,dbn和rbm在機器學習界引起了很廣泛的應用。蒙特卡洛方法 解釋參考 1 具體思想 ...
android基礎知識
1.android paint和color類 要繪圖,首先得調整畫筆,待畫筆調整好之後,再將影象繪製到畫布上,這樣才可以顯示在手機螢幕上。android 中的畫筆是 paint類,paint 中包含了很多方法對其屬性進行設定,主要方法如下 setantialias 設定畫筆的鋸齒效果。setcolo...
Android 基礎知識
我們是 h是對應 2560 1440 xxh是對應 1920 1080 1dp 3px xh是對應 1280 720 1dp 2px h是對應 800 480 m是對應 480 320 bg splash.png error failed to read png signature file doe...