Android TV开发总结(二)构建一个TV Metro界面(仿泰捷视频TV版)
来源:互联网 发布:线切割直线编程怎么编 编辑:程序博客网 时间:2024/04/27 13:41
前言:上篇是介绍构建TV app前要知道的一些事儿,开发Android TV和手机本质上没有太大的区别,屏大,焦点处理,按键处理,是有别于有手机和Pad的实质区别。今天来介绍TV中Metro UI风格,并结合实例说明。
Android TV发展离不开Metro UI,先看最新的泰捷TV的会员区效果,属于典型的Metro风格,如下:
什么是Metro UI:
Metro的设计意念来源于交通局巴士站站牌机场和地铁的指示牌给了微软设计团队灵感,设计团队说Metro是来源于美国华盛顿州金县都会交通局(King County Metro)的标识设计,其风格大量采用大字体,能吸引受众之注意力。微软认为Metro设计[2] 主题应该是:“光滑、快、现代”。Metro的图标设计也会不同于Android和iOS。
Metro UI软件
Metro是微软为了方便开发者编写Metro风格的程序而提供的一个开发平台,可以调用微软WinRT暴露出来的接口编写Metro风格的程序。 而Metro风格的控件[3] 拓展Win8标准控件方法和属性,实现一些新的功能,如Component One Studio for WinRT XAML,Component One Studio for WinJS。在Windows8中开放的Windows应用程序市场也使用并推荐采用Metro风格界面的应用程序.
Metro 界面,开机后首先映入眼帘的第一个界面,个人感觉主要是为了触屏设备而设计的,但是在TV中使用起来也一样的方便。我们在Desktop中安装的程序以及 在应用商店中下载的程序都会在Metro中展现出来,所以我们要定期或不定期的对其进行分组、排序、整理,以方便我们的操作以及界面的美观。Metro界面同时提供了便捷的选项,使操作更加方便。
案例效果
今天来仿照并实现这个Metro界面,以下是我实现的效果图:
gif图:(TV上没有好的录屏工具,盒子系统一般低于5.0,有些厂商已经升到5.0,我用的是i71,很老的盒子,基于API 17, 4.2.2的系统)
源码分析
看下其中一个MetroItem的布局:
每一个MetroItemFrameLayout下包含一些子View,ImageView就是对应图片,CornerVew表示上下左右的的角标,TextView表示下方的描述,这些可视具体情况进行选择。
其他相关代码,下篇博客具体分析。案例已开源到Github,对应链接:https://github.com/hejunlin2013/TVSample。喜欢可以star.
License
Copyright (C) 2016 hejunlinLicensed under the Apache License, Version 2.0 (the "License");you may not use this file except in compliance with the License.You may obtain a copy of the License athttp://www.apache.org/licenses/LICENSE-2.0Unless required by applicable law or agreed to in writing, softwaredistributed under the License is distributed on an "AS IS" BASIS,WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.See the License for the specific language governing permissions andlimitations under the License.
第一时间获得博客更新提醒,以及更多android干货,源码分析,欢迎关注我的微信公众号,扫一扫下方二维码或者长按识别二维码,即可关注。
如果你觉得好,随手点赞,也是对笔者的肯定,也可以分享此公众号给你更多的人,原创不易
- Android TV开发总结(二)构建一个TV Metro界面(仿泰捷视频TV版)
- TV Metro界面(仿泰捷视频TV版)源码解析
- Android TV开发总结(四)通过RecycleView构建一个TV app列表页(仿腾讯视频TV版)
- Android TV Metro界面
- Android TV开发总结(一)构建一个TV app前要知道的事儿
- Android TV开发总结(一)构建一个TV app前要知道的事儿
- Android TV开发总结(六)构建一个TV app的直播节目实例
- Android TV开发总结(七)构建一个TV app中的剧集列表控件
- Android TV开发总结(三)构建一个TV app的焦点控制及遇到的坑
- Android TV开发(二)处理TV硬件
- Android TV开发总结(五)TV上屏幕适配总结
- Android TV开发总结(五)TV上屏幕适配总结
- Android TV开发总结(五)TV上屏幕适配总结
- Android TV开发总结(五)TV上屏幕适配总结
- Android TV机顶盒开发总结
- Android TV开发总结(一)
- Android TV 开发总结概览
- 一步一步学习Android TV/盒子开发(二)
- Chrome 键盘快捷键
- 正确编写Designated Initializer的几个原则
- 大数据面试题
- 常用方法和一些快捷键
- 有两个房间,一间房里有三盏灯,另一间房有控制着三盏灯的三个开关, 这两个房间是分割开的,从一间里不能看到另一间的情况。 现在要求受训者分别进这两房间一次,然后判断出这三盏灯分别是由哪个开关控制的。
- Android TV开发总结(二)构建一个TV Metro界面(仿泰捷视频TV版)
- 1010. Radix (25)
- thinkphp的程序本地测试正常放到网站上后打开一片空白
- 作业:二进制数+1的后续
- RAW实现
- SpringMVC源码分析--容器初始化(三)HttpServletBean
- HDU - 5505 GT and numbers 【GCD】
- linux菜鸟入门之文本处理小工具sed
- uva 11040 规律递推(水)