文档章节

安卓开发--多平台支持

shadowalker1990
 shadowalker1990
发布于 2013/09/02 15:18
字数 506
阅读 104
收藏 2

安卓设备有很多不同的种类,从语言到机体尺寸等等,如何使得自己的应用能够很好的适应各种平台成为了一个开发人员要考虑的重要问题。安卓虽然平台众多,但是好在安卓自身提供了很丰富简单的支持多平台的方式,所以安卓并不像外界所认为的那样,平台众多让它几近崩溃,实际上它运转的很好。

一.如何支持不同语言

在这里又要回到这一系列博文的第一章,有关安卓开发一些基本概念的介绍。在其中曾经介绍过一个文件string.xml,之前各种预定义的变量可以放在这儿定义,现在又要重新回到这里。安卓是默认使用英语,对于你需要显示其他语言时,可以在当前目录的同级目录下创建支持语言后缀的文档,并编写对应的string.xml文件,安卓系统会根据机体设定自动取得对应文档,如下:

MyProject/
        res/values/string.xml
            /values-fr/string.xml

二.支持不同屏幕的布局

MyProject/
        res/layout/main.xml
            /layout-large/main.xml
            .......

有关不同屏幕的布局,后面一篇会讲到fragment,其可以提供比配置文件更方便灵活的布局方式

三.不同分辨率的图标

MyProject/
        res/drawable-xhdpi/xxx.png
            /drawable-ldpi/xxx.png
            ......

四.使用不同风格与主题

在values目录下有个文件styles.xml,在这里你可以自定义activity甚至整个application的风格

   <style name="CustomActionBarTheme"
           parent="android:Theme.Holo.Light.DarkActionBar">
        <item name="android:actionBarStyle">@style/MyActionBar</item>
        <item name="android:actionBarTabTextStyle">@style/MyActionBarTabText</item>
        <item name="android:actionBarTabStyle">@style/MyActionBarTabs</item>
        <item name="android:actionMenuTextColor">#01F100</item>
    </style>
    
    <style name="MyActionBar"
           parent="android:Widget.Holo.Light.ActionBar.Solid.Inverse">
        <item name="android:background">@drawable/actionba_background</item>
        <item name="android:titleTextStyle">@style/MyActionBarTitleText</item>
    </style>


    <!-- ActionBar title text -->
    <style name="MyActionBarTitleText"
           parent="android:TextAppearance.Holo.Widget.ActionBar.Title">
        <item name="android:textColor">#A0FF01</item>
    </style>


    <!-- ActionBar tabs text styles -->
    <style name="MyActionBarTabText"
           parent="android:Widget.Holo.ActionBar.TabText">
        <item name="android:textColor">#a0FF02</item>
    </style>


    <style name="MyActionBarTabs"
           parent="android:Widget.Holo.ActionBar.TabView">
        <item name="android:background">@drawable/actionbar_tab_indicator</item>
    </style>

© 著作权归作者所有

shadowalker1990
粉丝 12
博文 25
码字总数 10508
作品 0
南京
程序员
私信 提问
Android 快速框架 ZBLibrary18.3 发布,自动生成请求代码

18.3 更新内容: 支持APIJSONAuto自动生成的请求代码; OKHTTP升级到3.11.0; 升级sdk,gradle,app的版本; 替换已失效的图片URL; 坐标标准库ZBLibrary,是一个MVP架构的Android快速开发框架...

孤独的探索号
2018/09/12
1K
2
Qt在移动领域的能耐到底有多大?

据说最近一段时间Qt发力支持多平台开发,特别是在从nokia那边脱手出来,digia公司显得尤其发力,在2年左右的时间,着手研发Qt5.x,并在Qt5.3成功发布支持Android和ios开发的SDK,着手让Qter大...

toby520
2014/06/20
1K
8
Mozilla 宣布 Firefox OS 应用原生支持 Android

或许我们都很了解 Android 和 iOS 平台还有 Windows Phone 平 台,这三大平台都有着丰富的第三方应用支持,想对于一些比较小众和冷门的平台,比如黑莓的 BB10 系统、Jolla 的 Sailfish 系统还...

91porn
2014/06/14
1K
3
Kotlin 1.3 终于正式发布,带来了稳定的 Coroutines、beta版本的Kotlin/Native

Kotlin 官网:https://kotlinlang.org/ Github 地址:https://github.com/JetBrains/kotlin 此次版本更新包括: Coroutines 的正式发布 Kotlin/Native Beta 版本 contracts inline classes C......

fengzhizi715
2018/10/30
0
0
初探 PhoneGap 框架在 Android 上的表现

phonegap是由温哥华的一家小公司研发的多平台的移动开发框架,支持流行的大多数移动设备(iPhone,Android ,BlackBerry,Symbian,Palm,Window Phone).目前phonegap获得Apple,IBM,NOKIA,pal...

无鸯
2011/09/09
7.7K
8

没有更多内容

加载失败,请刷新页面

加载更多

跟我来见证:《Kafka如何实现每秒上百万的高并发写入?》

本文来聊一下Kafka的一些架构设计原理,这也是互联网公司面试时非常高频的技术考点。 Kafka是高吞吐低延迟的高并发、高性能的消息中间件,在大数据领域有极为广泛的运用。配置良好的Kafka集群...

Java干货分享
20分钟前
3
0
Storm+Hbase广告实时统计

本文主要讲述使用Kafka+Strom+Hbase搭建的一套广告实时计算系统。其中服务器显示使用的是SpringBoot+Vue+ElementUI+EChats. 主要内容: 1.需求 2.日志格式 3.Hbase表格设计 4.编写Storm程序 ...

飓风2000
43分钟前
4
0
android,ContentProvider+ContentObserver+ContentResolver,用法。

这个是传智播客老师讲android开发时的一个图。 一、 PersonProvider继承ContentProvider,实现ContentProvider中的数据操作类。 ContentObserver——内容观察者,目的是观察(捕捉)特定Uri引起...

天王盖地虎626
49分钟前
3
0
解决markdown中的不换行问题

没有解决我的格式显示问题 https://blog.csdn.net/qq_23483671/article/details/79017609

南桥北木
54分钟前
2
0
产品上新|ZStack3.5.0正式发布啦!

海量产品资料传送门~ 一、ZStack全线产品下载通道汇总 社区版(免费): https://www.zstack.io/product/zstack_open_source/ 企业版下载: https://www.zstack.io/product/zstack_enterpris...

ZStack社区版
56分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部