安卓2.x的版本使用4.x的主题

现在,还有大部分安卓开发者在开发安卓APP时使用的是2.x的SDK版本,为了兼容2.x的手机这本倒无可厚非,但最令人头痛的就是2.x版本的主题是在太丑了,这是安卓刚推出时只考虑到了实用,并没考虑到美观,而现在上至操作系统下至应用软件都以漂亮的界面,舒适的操作体验为前提,那么是否可以,既兼容2.x又可以使用4.x的主题风格呢?答案当然是有的!

有时我们在安装某APP时,会看到支持最低版本为2.1,2.2等,但是打开该应用其主体风格确实4.x的,我们可能会这样想,既然能支持2.1,2.2那它使用的SDK版本应该为2.x,但为什么主题风格确实4.x的呢?道理很简单,既然是4.x的主题风格,那肯定是用4.x的SDK版本编译的,为了实现这种效果,可以在代码中动态的判断当前系统的版本,如果在11以下就使用2.x的主题风格,如果在11以上就是用4.x的主题风格,可以创建一个BaseActivity,判断代码放入其中,其他Activity全部继承BaseActivity即可,主要代码如下:

if (Build.VERSION.SDK_INT < Build.VERSION_CODES.HONEYCOMB) {
            setTheme(android.R.style.Theme_Black_NoTitleBar);
        }else{
            setTheme(android.R.style.Theme_Holo_Light);
        }
		requestWindowFeature(Window.FEATURE_NO_TITLE);//去掉标题栏

该段代码放置在onCreate方法中,super.onCreate(savedInstanceState);之前,并在AndroidManifest.xml文件中声明最低支持版本,一般为7,或者8就可以了:

<uses-sdk android:minSdkVersion="7" />

最后一点,有些同学在用此方法后,打开APP的一瞬间会看先看到一个带标题栏黑色的界面一闪而过,这样大家可以先在AndroidManifest.xml中定义一个默认主题即可:

android:theme="@android:style/Theme.Black.NoTitleBar" 

此后,我们就可以不必再使用2.x的SDK去编译项目了。

还有一点需要注意,就是如果项目使用了TabActivity,需要在你的TabMainActivity中用同样的方法去判断。

时间: 2024-11-07 16:51:19

安卓2.x的版本使用4.x的主题的相关文章

安卓4.3以上版本已经完美支持BLE(英文版)

Android 4.3 (API Level 18) introduces built-in platform support for Bluetooth Low Energy in the central role and provides APIs that apps can use to discover devices, query for services, and read/write characteristics. In contrast to Classic Bluetooth

历代安卓版本回顾(使用者角度+开发者角度)长期更新!!!

转载请注明出处:http://www.cnblogs.com/cnwutianhao/p/6676121.html 序言 Android 用甜点作为它们系统版本的代号的命名方法开始于 Andoird 1.5 发布的时候.作为每个版本代表的甜点按照26个英文字母顺序的原则进行命名:纸杯蛋糕,甜甜圈,松饼,冻酸奶,姜饼,蜂巢... Build.VERSION_CODESGoogle官网地址 https://developer.android.google.cn/reference/android/o

Android SDK Manager仅有一个版本的问题

搭建好MonkeyRunner的环境之后,建立虚拟器的时候发现SDK的管理器中只有4.3的版本,查阅了一下百度,问题解决如下: (1)在c:\Windows\System32\etc\hosts文件中用管理员身份运行; 在记事本的图标上,右键点击用管理员身份运行,在工具栏选项上打开hosts文件,在文件的结尾加上:173.194.78.190  dl-ssl.google.com,然后保存. (2)重启Eclipse,打开SDK管理器,就能看到更新的很多版本 然而没有成功过,至今还在摸索中,现如

[安卓基础] 004.运行app

运行你的app 这篇课程会教你: 1.如何在设备上运行你的app. 2.如何在模拟器上运行你的app. 当然,在学习之前,你还需要知道: 1.如何使用设备. 2.如何使用模拟器. 3.管理你的项目. 上一节课我们创建了一个android项目.它是可以直接运行的.当我们创建好它时,它就默认帮我们写好了一个Hello World!的界面.运行就可以看到. 在运行项目前,我们还是先了解一下android项目的各个目录和文件是做什么用的吧. AndroidManifest.xml manifest,载货

安卓开发教程-实战网页源代码查看器,安卓程序员必备

本系列教程致力于可以快速的进行学习安卓开发,按照项目式的方法,通常一篇文章会做一个小程序.提高学习的兴趣. 一方面总结自己所得,另一方面可以通过自己的分享帮助更多学习的同仁. 因为知识的连贯性,推荐按照瞬息进行学习.目录链接:http://www.chengxiaoxiao.com/bozhu/1336.html 本教程由今日头条-做全栈攻城狮原创首发,转载请注明出处. 求兼职:请联系wx:aiquanzhan 页尾提供github源代码下载地址. 一.项目描述: 众所周知,组成网站的每个页面都

初识安卓小程序(点击按钮切换屏幕颜色)

如图,点击按钮就会切换屏幕的颜色 首先,先创建一个安卓项目(我的版本是4.4.2的),名字为"world",当然,也可以别的名称 然后在res文件夹下找到layout文件夹,找到activity_main.xml或fragment_main.xml,在里面输入或拖拽按钮 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="htt

安卓程序防止反编译的方式

1. 加壳 apk的加壳:在程序外面再包裹一层代码,保护里面的代码不被非法修改或者反编译. 被保护的程序用加密算法加密,解密逻辑写在作为壳的APK中,实际执行的是被保护的程序. 大多是通过DexClassLoader或者隐藏的函数openDexFile将源dex(即被保护的app)加载进来,然后动态替换Application来启动源程序.跟Windows上传统的PE文件加壳有一定区别. 要破解传统的壳,需要跟踪控制流找到OEP,然后把源程序从内存中dump下来,重建输入表,最困难的就是要跟着外壳

初识安卓小程序(Android短信发送器)

首先,先创建一个安卓项目(我的版本是4.4.2的),名字为"短信发送器" 然后在res文件夹下找到layout文件夹,找到activity_main.xml或fragment_main.xml,在里面输入或拖拽按钮 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tool

安卓开发平台搭建

安卓开发平台搭建 安卓开发平台主要有Eclipse和Android studio两大平台,而Eclipse开发平台又有集成adt的adt bundle和模块式Eclipse,安卓开发平台搭建主要有以下三种方法,http://www.androiddevtools.cn/这个网站有很多相关开发工具提供下载. [方法一]:jdk+adt bundle,adt bundle最新版本是adt-bundle-windows-x86-20140702,里面是ADT23.0.2+andriod 4.4 api