当前位置:首页 » 安卓系统 » androidtv适配

androidtv适配

发布时间: 2022-06-30 15:04:32

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)三个平台图片和视频共享的软件

这位朋友 你的福音来了

听说过 网络云硬盘吗 完美解决你的问题
也就是说 你所说的系统 都有 应用 而我 哪怕苹果手机都有, 不过 电视 就要看你是否会安装了
因为不是所有应用市场都能找到,如果你家的正好没有,就用自己安装了

热点内容
scratch少儿编程课程 发布:2025-04-16 17:11:44 浏览:640
荣耀x10从哪里设置密码 发布:2025-04-16 17:11:43 浏览:368
java从入门到精通视频 发布:2025-04-16 17:11:43 浏览:86
php微信接口教程 发布:2025-04-16 17:07:30 浏览:310
android实现阴影 发布:2025-04-16 16:50:08 浏览:794
粉笔直播课缓存 发布:2025-04-16 16:31:21 浏览:346
机顶盒都有什么配置 发布:2025-04-16 16:24:37 浏览:213
编写手游反编译都需要学习什么 发布:2025-04-16 16:19:36 浏览:817
proteus编译文件位置 发布:2025-04-16 16:18:44 浏览:367
土压缩的本质 发布:2025-04-16 16:13:21 浏览:594