導航:首頁 > 操作系統 > android兩屏

android兩屏

發布時間:2022-12-07 18:08:22

『壹』 android-屏幕適配全攻略(絕對詳細)(一)

關鍵字: 屏幕適配 px dp dpi sp large限定符 .9.png

前言: 這篇文章依然是我在 [慕課網 ][h]學習 凱子哥 的同名視頻 Android-屏幕適配全攻略 ,所記錄下來的筆記---凱子哥講得真的超詳細。
[h]: http://www.imooc.com/ "MOOC"

從上圖可以看出,主流的解析度是前六種:1280×720、1920×1080、800×480、854×480、960×540、1184×720,不過我們有解決方案。看完這篇文章,想必你就可以解決常見的屏幕適配問題。

接下來正式進入正題。

介紹幾個在Android屏幕適配上非常重要的名詞:

屏幕尺寸 是指屏幕對角線的長度。單位是英寸,1英寸=2.54厘米
屏幕解析度 是指在橫縱向上的像素點數,單位是px,1px=1像素點,一般是縱向像素橫向像素,如1280×720
屏幕像素密度 是指每英寸上的像素點數,單位是dpi,即「dot per inch」的縮寫,像素密度和屏幕尺寸和屏幕解析度有關

dip: Density Independent Pixels(密度無關像素)的縮寫。以 160dpi 為基準,1dp=1px
dp: dip
dpi: 屏幕像素密度的單位,「dot per inch」的縮寫

px: 像素,物理上的絕對單位

sp: Scale-Independent Pixels的縮寫,可以根據文字大小首選項自動進行縮放。Google推薦我們使用12sp以上的大小,通常可以使用12sp,14sp,18sp,22sp,最好不要使用奇數和小數。

用於區分不同的像素密度。

在Google官方開發文檔中,說明了 ** mdpi:hdpi:xhdpi:xxhdpi:xxxhdpi=2:3:4:6:8 ** 的尺寸比例進行縮放。例如,一個圖標的大小為48×48dp,表示在mdpi上,實際大小為48×48px,在hdpi像素密度上,實際尺寸為mdpi上的1.5倍,即72×72px,以此類推。

我們可以通過以下幾種方式來支持各種屏幕尺寸:

wrap_content: 根據控制項的內容設置控制項的尺寸
math_parent: 根據父控制項的尺寸大小設置控制項的尺寸
weight: 權重,在線性布局中可以使用weight屬性設置控制項所佔的比例

例如,我們要實現下圖所顯示的效果:當屏幕尺寸改變時,new reader控制項兩邊的控制項大小不變,new reader控制項會占完剩餘的空間。

具體布局文件如下:

小插曲: 關於 android:layout_weight 屬性

一般情況,我們都是設置要進行比例分配的方向的寬度為0dp,然後再用權重進行分配。如下:

效果為:

效果為:

button1寬度=L+(L-2L)×1/3=2/3L
button2寬度=L+(L-2L)×2/3=1/3L

當然,還有其他的方式,都可以運用此公式進行計算。
在實際開發中,我們一般使用0dp的方式,而不使用其他方式。

簡單的布局一般都使用 線性布局 ,而略微復雜點的布局,我們使用 相對布局 ,大多數時候,我們都是使用這兩種布局的嵌套。

我們使用 相對布局 的原因是, 相對布局 能在各種尺寸的屏幕上保持控制項間的相對位置。

res/layout/main.xml 單面板:

res/layout-large/main.xml 雙面板:

如果這個程序運行在屏幕尺寸大於7inch的設備上,系統就會載入 res/layout-large/main.xml 而不是 res/layout/main.xml ,在小於7inch的設備上就會載入 res/layout/main.xml 。

需要注意的是,這種通過 large 限定符分辨屏幕尺寸的方法,適用於android3.2之前。在android3.2之後,為了更精確地分辨屏幕尺寸大小,Google推出了最小寬度限定符。

res/layout-sw600dp/main.xml ,雙面板布局: Small Width 最小寬度

這種方式是不區分屏幕方向的。這種最小寬度限定符適用於android3.2之後,所以如果要適配android全部的版本,就要使用 large 限定符和 sw600dp 文件同時存在於項目 res 目錄下。

這就要求我們維護兩個相同功能的文件。為了避免繁瑣操作,我們就要使用布局別名。

由於後兩個文具文件一樣,我們可以用以下兩個文件代替上面三個布局文件:

res/layout/main.xml 單面板布局
res/layout/main_twopanes.xml 雙面板布局

然後在 res 下建立
res/values/layout.xml 、
res/values-large/layout.xml 、
res/values-sw600dp/layout.xml 三個文件。

默認布局
res/values/layout.xml :

Android3.2之前的平板布局
res/values-large/layout.xml :

Android3.2之後的平板布局
res/values-sw600dp/layout.xml :

這樣就有了 main 為別名的布局。
在activity中 setContentView(R.layout.main);

這樣,程序在運行時,就會檢測手機的屏幕大小,如果是平板設備就會載入 res/layout/main_twopanes.xml ,如果是手機設備,就會載入 res/layout/main.xml 。我們就解決了只使用一個布局文件來適配android3.2前後的所有平板設備。

如果我們要求給橫屏、豎屏顯示的布局不一樣。就可以使用 屏幕方向限定符 來實現。
例如,要在平板上實現橫豎屏顯示不用的布局,可以用以下方式實現。
res/values-sw600dp-land/layouts.xml :橫屏

res/values-sw600dp-port/layouts.xml :豎屏

自動拉伸點陣圖,即android下特有的 .9.png 圖片格式。

當我們需要使圖片在拉伸後還能保持一定的顯示效果,比如,不能使圖片中的重要像素拉伸,不能使內容區域受到拉伸的影響,我們就可以使用 .9.png 圖來實現。

要使用 .9.png ,必須先得創建 .9.png 圖片,androidSDK給我們提供了的工具就包含 .9.png 文件的創建和修改工具。雙擊 SDK安裝目錄 oolsdraw9patch.bat ,就會打開下圖所示的窗口。

下面是一個例子:

Button屬性設置:

如果我們選擇的內容區域偏差太大,可能就不會顯示出text值 BUTTON 。

好了,這篇文章寫的有點多了,剩下的內容放在 下篇文章 記錄吧。
內容提要:
解決方案-支持各種屏幕密度
解決方案-實施自適應用戶界面流程

未完待續

『貳』 在Qt for android 中,怎麼實現雙屏異顯,也就是兩個屏幕,顯示不同的內容

大兄弟,解決沒有,能否告知一下

『叄』 安卓怎麼分屏雙開

如果您使用的是華為手機,以華為Mate 40手機為例:
一、開啟分屏:
1、打開某個應用後,在手機屏幕左側或右側,從外向內滑動屏幕並停頓,調出智慧多窗應用欄。

2、長按並拖拽應用欄中的應用圖標至屏幕,開啟分屏。
二、分屏互換:
長按分屏窗口頂部的橫條至分屏窗口縮小後,拖拽該窗口至另外一個分屏窗口。
三、退出分屏:
按住分屏中間線上的橫條或豎條拖動直至另外一個窗口消失。
部分應用不支持分屏顯示。
同一時間只能使用兩個分屏應用。
四、在分屏應用間快速拖拽
打開分屏應用後,可以直接在應用間拖拽圖片、文字或文檔。
1、拖拽圖片:例如,在編輯備忘錄時,同時打開文件管理並選中一張圖片,可將其拖拽至備忘錄編輯頁面。
2、拖拽文字:例如,在發送信息時,同時打開備忘錄長按並標選中需要文字,再次長按可將其拖拽至微信中。
3、拖拽文檔:例如,在編輯電子郵件時,同時打開文件管理選中一篇文檔,可將其拖拽至電子郵件。
部分應用不支持應用間拖拽。
五、添加、移動或移除分屏應用
1、添加應用:調出智慧多窗應用欄,點擊加號,點擊要添加的應用,點擊完成。

2、移動應用:調出智慧多窗應用欄,點擊加號,在應用欄中長按應用圖標並拖拽,可將其移動到應用欄任一位置,點擊完成。
3、移除應用:調出智慧多窗應用欄,點擊加號,在應用欄中點擊應用圖標右上角的減號移除應用,點擊完成。
六、分屏與懸浮窗相互切換
1、分屏切換為懸浮窗:手機豎屏時,長按分屏窗口頂部橫條向左或向右滑動可切換為懸浮窗;手機橫屏時,長按分屏窗口頂部橫條向下滑動可切換為懸浮窗。
2、懸浮窗切換為分屏:手機豎屏時,長按懸浮窗頂部橫條向上或向下拖動切換至分屏;手機橫屏時,長按懸浮窗頂部橫條向左或向右拖動切換至分屏。
七、打開單個應用的多窗口
您可以打開單個應用(如:郵件、備忘錄)的多個任務窗口,在多個任務窗口間拖拽圖片、文字或文檔。
部分應用程序不支持此功能,請以實際情況為准。
1、分屏打開單個應用的多任務窗口。
打開郵件應用的一個任務窗口。
在手機屏幕左側或右側,從外向內滑動屏幕並停頓,調出智慧多窗應用欄。
長按並拖拽應用欄中的郵件應用圖標至屏幕,分屏開啟郵件應用的多任務窗口。
2、在單個應用的多任務窗口間快速拖拽。
拖拽圖片:從一個郵件任務窗口選中一張圖片,可將其拖拽至另一個郵件任務窗口中。
拖拽文字:從一個郵件任務窗口長按並標選中需要文字,再次長按可將其拖拽至另一個郵件任務窗口中。
拖拽文檔:從一個郵件任務窗口選中一個文檔,可將其拖拽至另一個郵件任務窗口中。
八、關閉智慧多窗
智慧多窗功能默認開啟,若您想要關閉:
進入設置 > 輔助功能 > 智慧多窗 ,關閉智慧多窗應用欄。

『肆』 兩部安卓手機如何實現同屏

可以用樂播投屏來達成,a手機安裝樂播投屏手機版,b手機安裝樂播投屏tv版,然後按提示連接就行了(需處於同一網路下,網路良好),連接成功後a手機的畫面將實時同步在b手機上。

『伍』 安卓手機怎麼分屏

您好,分屏顯示並不是所有安卓手機都可以實現的,這需要您手機的供應商對手機添加分屏顯示的功能,和安卓系統是沒有關系的,打個比方,三星手機的第一款帶有分屏顯示功能的手機是i9300,而且分屏顯示也和您使用的一些app應用有關系,並不是所有的app應用都支持分屏顯示

閱讀全文

與android兩屏相關的資料

熱點內容
dvd光碟存儲漢子演算法 瀏覽:757
蘋果郵件無法連接伺服器地址 瀏覽:962
phpffmpeg轉碼 瀏覽:671
長沙好玩的解壓項目 瀏覽:144
專屬學情分析報告是什麼app 瀏覽:564
php工程部署 瀏覽:833
android全屏透明 瀏覽:736
阿里雲伺服器已開通怎麼辦 瀏覽:803
光遇為什麼登錄時伺服器已滿 瀏覽:302
PDF分析 瀏覽:484
h3c光纖全工半全工設置命令 瀏覽:143
公司法pdf下載 瀏覽:381
linuxmarkdown 瀏覽:350
華為手機怎麼多選文件夾 瀏覽:683
如何取消命令方塊指令 瀏覽:349
風翼app為什麼進不去了 瀏覽:778
im4java壓縮圖片 瀏覽:362
數據查詢網站源碼 瀏覽:150
伊克塞爾文檔怎麼進行加密 瀏覽:892
app轉賬是什麼 瀏覽:163