Android Density[轉] +Gentoo中的系統時間調整[轉]__Android

來源:互聯網
上載者:User
1.什麼是density

  1)density

  density表示每英寸有多少個顯示點(邏輯值),它的單位是dpi:dot per inch,通常螢幕大時,density就大,螢幕小時,density就小,通常

  螢幕實際解析度為240px*400px時,density=120

  螢幕實際解析度為320px*533px,density=160

  螢幕實際解析度為480px*800px,density=240

  2)解析度

  是整個屏是多少點,比如800x480,它是軟體的顯示單位

  3)從Android1.6版本開始支援density(對應API Level 4)

  用於解決應用在螢幕大小不同的硬體上正常顯示的問題

  2.相關代碼及設定

  1)AndroidManifest.xml

  <supports-screens android:anyDensity="true"/>

  <uses-sdk android:minSdkVersion="4"></uses-sdk>

  這個參數在API Level 4也就是SDK 1.6以後才啟用的,而且1.6版本的API Level 4的應用預設值就是True

  2)資來源目錄名(android 2.0以後)

  res/xxx-hdpi當density為240時,使用此目錄下的資源

  res/xxx-mdpi當density為160時,使用此目錄下的資源

  res/xxx-ldpi當density為120時,使用此目錄下的資源

  res/xxx不常尾碼,為預設設定,同xxx-mdpi

  3)資源單位(xml檔案中定義大小的單位)

  a)dp=dip=dx (Density independent pixel)

  基於螢幕密度的抽象單位,裝置無關的點,用於說明與密度無關的尺寸和位置。這些單位是相對於一個160dpi的螢幕,所有一個dp是160dpi螢幕上的一個點。

  b)px

  px指軟體的單位點,裝置相關的點

  c)具體使用

  i.布局時盡量使用單位dip,少使用px

  若使用px,如果設某控制項大小400x400px,在800x480上顯示正常,而在533x320的屏上就超出螢幕了

  若使用dp,如果設某控制項大小為160x160dp,就可以通過從系統中取density來算出真正的大小,比如在800x480屏的density設為240,而533x320屏的density設為160,藉以下公式計算

  pixels = dips * (density / 160)

  在800x480在屏中顯示240象素,而在533x320的屏中顯示為160象素,控制項在屏中顯示的比例是一樣的。

  ii.內部的處理過程分為三步:

  取screen中其它元素,轉為應用的值,計算應用各控制項位置,然後再轉成800x480以供真正顯示

  若res-xxx不存在,則讀取res有的資源,然後對其做相應縮放

  3.實現density的關鍵源碼

  1)BitmapFactory.java(用於縮放圖片)

  2)ComptibilityInfo.java(用於位置計算)





Gentoo中的系統時間調整[轉]

首先要熟悉date命令的用法:
# date
2007年10月 9日 星期二 23時07分05秒 CST
# date "+%Y.%m.%d %H:%M:%S"
2007.10.09 23:07:05
比較容易弄混的是m的小寫與大寫,小寫指月份,大寫指分鐘。

用date可以手工調整目前時間,比如,2008年07月21日 13:00 :
# date 072113002008

可以串連國家授時中心的伺服器來擷取準確時間,在Gentoo中要先下載ntp:
# emerge ntp
# ntpdate 210.72.145.44
# hwclock --systohc

在/etc/conf.d/clock 中設定時區:
CLOCK="local"
TIMEZONE='Asia/Shanghai'
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.