androidtv適配
A. android手機適配機型都有哪幾種
一、關於布局適配
1、不要使用絕對布局
2、盡量使用match_parent 而不是fill_parent 。
3、能夠使用權重的地方盡量使用權重(android:layout_weight)
4、如果是純色背景,盡量使用android的shape 自定義。
5、如果需要在特定解析度下適配,可以在res目錄上新建layout-HxW.xml的文件夾。比如要適配1080*1800的屏幕(魅族MX3採用此解析度)則新建layout-1800x1080.xml的文件夾,然後在下面定義布局。Android系統會優先查找解析度相同的布局,如果不存在則換使用默認的layout下的布局。
二、關於圖片製作
1、關於設計:
設計圖先定下一個要設計的尺寸,而且盡量採用在目前最流行的屏幕尺寸(比如目前占屏幕比重比較多的是480系列,也即是480*800或者400*854,下面的圖標製作也在次基礎上進行比例的換算)上設計。
先了解一下屏幕的級別:
屏幕級別:
注意屏幕級別是按照密度分級,和像素沒有關系。如果非要讓密度和像素扯上關系,則需要一個參照系,android使用mdpi級別作為標准參照屏幕,也就是說在320*480解析度的手機上一個密度可以容納一個像素。然後其他密度級別則在此基礎上進行對比。如果理想情況下,480*800的屏幕一個密度可以容納1.5個像素。
物理大小:
單位是英寸而不是像素,也就說一個英寸在任何解析度下顯示的大小都是一樣的,但是像素在密度不同的手機裡面顯示的實際的大小是不一樣的(這就是為什麼android手機需要適配的原因)。
然後就是重點。
假設1像素在160密度下顯示1英寸,則1像素在240密度基礎上顯示大約0.67英寸,在320密度下顯示0.5英寸。於是就出現一種情況,在電腦上的一個像素,在不同的手機上看實際的大小不一樣。那麼怎麼讓「設計效果」在不同的手機上看起來顯示的區域一樣呢?
還是假設一個像素在160密度下的顯示在一個密度內,也假設就是一英寸。那麼需要幾個像素才能在240密度級別下顯示在一英寸范圍內呢?答案是1.5個像素(根據上圖的比率換算)。
了解了這個關系,接下來就是圖標的製作。
2、關於切圖。
關於切圖有幾個建議:
第一,長寬最好是3的倍數(根據android的推薦logo圖標的大小是48(mdpi),72(hdpi),96(xhdpi)得出的最小公約數)。
第二,長寬最好是偶數。因為奇數在進行等比壓縮的時候可能有問題。
第三,根據上面兩條,如果長寬是6的倍數最理想。
第四,如果可以拉伸而不改變設計意圖的情況下,比如純色背景,則使用android的9path工具製作成.9的圖片。
3、關於圖標的適配。
然後接下來的一切就和設計稿沒什麼關系。在切好圖的基礎上,根據屏幕密度、像素和實際大小的比例關系。假如設計司在480*800的解析度下做好了設計圖,並且切好圖,如果你需要適配720*1280屏幕,該怎麼做?根據比例,他們的關系是2:3,於是你需要按照1.5倍比例製作圖標,比如你在480*800的設計稿上切下來一個20*20像素的圖,那麼你就需要製作一個等比放大成30*30像素的圖標,這樣同一個圖標在480*800的屏幕和720*1280的屏幕上顯示的實際大小才一樣。同理,如果你需要適配xxhdpi則需要在20*20的基礎上製作一個等比放大成40*40像素的圖標。
4、關於圖標的目錄,480*800切下來的圖我們放在drawable-hdpi目錄下,按照2:3放大的圖標放在drawable-xhdpi目錄下,按照2倍放大的圖標放在drawable-xxhdpi目錄下。
android會根據手機的密度優先查找對應的目錄的資源,
比如408*800解析度下的手機如果密度是160,則自動載入drawable-hdpi這個目錄下的圖標,
如果720*1280密度是240的手機自動載入drawable-xhdpi這個目錄下的圖標。如果沒有這個文件夾,則查找和240最接近的對應密度文件夾。
三、其它
接下來要說的估計會讓你失望,根據上面的步驟也不能完全解決適配的問題,只能是大概適配,而就算根據上面的步驟大概適配了,實際在手機上的效果也有出入。
比如魅族MX3的解析度是1080*1800,標准情況下密度是480,但是他的密度大約是524,和480接近,也就是會查找drawable-xxhdpi這個資源下的文件。也就是說你在480*800解析度下切圖然後按兩倍放大的圖標在這台手機上顯示的效果還是比實際的小。
而另一個要說的問題是540*960或者640*960,他們的密度很可能是或者接近240也可能是320。於是在480*800的設計稿上切下來的圖並且進行的適配製作,在這些手機上顯示的實際大小也可能或大或小。
B. 安卓TV版和安卓hd版還有安卓iPad版這三個有什麼區別
TV版是專門適配智能電視或者機頂盒系統的,HD版和IPAD版是供平板專用的
C. Android TV開發中怎麼設置全局焦點框
=L= LZ您好 那個dsoid我也有下 LZ您說的開發者選項里只有強制GPU渲染是沒什麼提高性能的選項的 除了那個運行模式 lz勾上性能模式的話 就是四核最高頻率鎖死運行了 還有LZ模擬器吃的是GPU。。。。比如07年代配置的電腦PC端NDS模擬器都有點吃不動 別說現在移動領域GPU的性能了 還有其實LZ那個模擬器幀數問題是兩方面 一就是我們面臨的 機器本身性能問題 二是模擬器開發者優化問題(其實這個是主要)LZ我建議你洗洗睡吧 現在ndsl也不貴啊 1000不到。。。。
D. android tv開發完全動態布局可行嗎
你的問題應該是要動態生成空間吧。 下面的答案可以參考下。 首先要卻這個界面的布局,是AbsoluteLayout,RelativeLayout還是其他,然後就可以再裡面添加控制項了: public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); //確定界面的布局 AbsoluteLayout abslayout=new AbsoluteLayout (this); setContentView(abslayout); //創建一個button按鈕 Button btn1 = new Button(this); btn1.setText(」this is a button」); btn1.setId(1); //確定這個控制項的大小和位置 AbsoluteLayout.LayoutParams lp1 = new AbsoluteLayout.LayoutParams( ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT, 0,100); abslayout.addView(btn1, lp1 ); } 一個界面可以布置一個布局,可以多個布局一起設計: public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); //設置界面的布局 RelativeLayout relativeLayout = new RelativeLayout(this); setContentView(relativeLayout); //添加一個AbsoluteLayout子布局,並給這個布局添加一個button AbsoluteLayout abslayout=new AbsoluteLayout (this); abslayout.setId(11); Button btn1 = new Button(this); btn1.setText(」this is a abslayout button」); btn1.setId(1); AbsoluteLayout.LayoutParams lp0 = new AbsoluteLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT,100,0); abslayout.addView(btn1, lp0 ); //將這個子布局添加到主布局中 RelativeLayout.LayoutParams lp1 = new RelativeLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT); lp1.addRule(RelativeLayout.ALIGN_PARENT_TOP); lp1.addRule(RelativeLayout.CENTER_HORIZONTAL, RelativeLayout.TRUE); relativeLayout.addView(abslayout ,lp1); //再添加一個子布局 RelativeLayout relativeLayout1 = new RelativeLayout(this); Button btn2 = new Button(this); btn2.setText(」this is a relativeLayout1 button」); btn2.setId(2); RelativeLayout.LayoutParams lp2 = new RelativeLayout.LayoutParams(ViewGroup.LayoutParams.FILL_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT); lp2.addRule(RelativeLayout.ALIGN_PARENT_TOP); lp2.addRule(RelativeLayout.CENTER_HORIZONTAL, RelativeLayout.TRUE); relativeLayout1.addView(btn2 ,lp2); //將這個布局添加到主布局中 RelativeLayout.LayoutParams lp11 = new RelativeLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT); lp11.addRule(RelativeLayout.BELOW ,11); relativeLayout.addView(relativeLayout1 ,lp11); }
E. Android TV屏是1920*1080解析度,用同樣解析度的圖片作為壁紙,為什麼壁紙被放大
drawable-nodpi 所有密度資源,無論什麼密度屏幕都會適配。
drawable-tvdpi 介於mdpi~hdpi 約213dpi 主要應用在電視。
F. android如何適配不同解析度
Android應用如何適配不同解析度的手機,主要分三塊考慮:
1.界面配置,根據不同的解析度,創建手機界面文件
例子:
在res下創建 layout-800x480,layout-480x320,並在各自不同解析度的文件夾下創建界面文件
2.圖片配置,不同的解析度,界面的長寬比不一致,需要不同規格的圖片,在drawable-hdpi,drawable-ldpi,drawable-mdpi 中放不同解析度的圖片.
注:為了減小整個應用程序安裝包大小,選用最高解析度適配,特殊界面圖片特殊處理.
3.動態實現的界面,樣式的設定,不同解析度,界面的字體大小,字體等需要不同的樣式,且需要動態生成的情況下,需要把不同解析度的配置信息保存到應用中。
例子:
在RES里創建 values-480x320 values-800x400 value-1280x720,並在創建的文件夾中分別創建dimens.xml,<dimen name="Text_size">30px</dimen>,在程序中直接調R.dimen.Text_sizeint sizeOfText = (int) this.getResources().getDimension(R.dimen.Text_size);
注:實際應用發現,字體大小適配時,比如只適配了如下屏幕字體
values-480x320 values-800x480 value-1280x720當出現手機屏幕解析度為 854x480時會自動找最大字體適配 (value-1280x720).
總結:如果字體800x480以上沒有適配,手機自動按最大解析度適配.
G. 做Android TV開發,需要用到一個功能,在界面上按 上,右,右三個鍵,開啟大招(啟動另一個a
重新onKeyDown方法。
if (keyCode == KeyEvent.KEYCODE_DPAD_CENTER||keyCode == KeyEvent.KEYCODE_ENTER) {
攔截中間鍵按下
}
keyCode == KeyEvent.KEYCODE_DPAD_UP
攔截上鍵按下
keyCode == KeyEvent.KEYCODE_DPAD_DOWN
攔截下鍵按下
keyCode == KeyEvent.KEYCODE_DPAD_LEFT
攔截左鍵按下
keyCode == KeyEvent.KEYCODE_DPAD_RIGHT
攔截右鍵按下
keyCode == KeyEvent.KEYCODE_BACK && event.getRepeatCount() == 0
攔截返回鍵按下
當按下 上下兩鍵時彈出一個popwindow來展示選集,這時彈出來的popwindwo沒有焦點,所以在創建popwindow時就要給它設置獲得焦 點 mSelectionsWindow.setFocusable(true);這樣popwindow里的不管listview還是gridview都能用遙控器上下左右鍵控制了。
可是這時返回鍵失效了,不能退出了,因為焦點都在popwindow上了,給popwindow設置setBackgroundDrawable這樣點擊返回鍵時popwindow就會消失掉。
如果想讓popwindow過個幾秒鍾自己消失,還要重新onKeyUp 撲捉按鍵抬起,在按鍵抬起時給handler發消息就能實現了。
H. android studio如何適配4000多種機型不是只適配主流的五種機型
做開發的,真的很難做到所有的機型都適配,選擇一些主流的機型和尺寸進行適配即可.避免不必要的開發時間.
I. 有沒有一款可以實現電腦(Windows)、電視(Android TV)、手機(Android)三個平台圖片和視頻共享的軟體
這位朋友 你的福音來了
聽說過 網路雲硬碟嗎 完美解決你的問題
也就是說 你所說的系統 都有 應用 而我 哪怕蘋果手機都有, 不過 電視 就要看你是否會安裝了
因為不是所有應用市場都能找到,如果你家的正好沒有,就用自己安裝了