android设置主题和自定义主题的方法
来源:互联网 发布:中国软件龙头股 编辑:程序博客网 时间:2024/06/10 17:50
嘿嘿,书接上回,android有两种设置主题到方法,一种就是通过修改manifest文件,一种就是在通过修改我们的java代码;主题的自定义设置和样式的自定义设置类似。
首先我们先来自定两个主题文件。 在res/values/style.xml添加如下代码:
<style name="MyTheme1" parent="@android:style/Theme.Dialog"> </style> <style name="MyTheme2" parent="@android:style/Theme.Wallpaper.NoTitleBar.Fullscreen"> </style><!-- 说明: 上建立了两个主题样式,第一个是对话框的主题,第二个是壁纸的主题。仅为例子使用,没有更改。想要更改某些属性可以参照:android sdk目录\data\res\values 目录下的themes.xml文件中的主题样式进行更改 -->
然后我们通过修改mainfest文件的方式来设置主题,打到mainfest.xml文件,对<application>标签加入代码:android:theme="@style/MyTheme1",这样就是对整个应用的主题进行设置,如果只修改某个activity的主题,这句代码也可以加在相应的<activity>标签中。
在java代码里我们实现一下主题的设定,主要代码如下:
//读取主题 如果读取失败,则设置为系统默认的主题 theme = getSharedPreferences("cons", MODE_PRIVATE).getInt("theme", android.R.style.Theme); //设定主题 setTheme(theme); //调用父类方法,一定要放到设定主题之后 super.onCreate(savedInstanceState); setContentView(R.layout.main); Button btn = (Button) findViewById(R.id.btn1); //通过点击,切换主题。点击后要重起应用能看到效果 btn.setOnClickListener( new OnClickListener(){ @Override public void onClick(View v) { if( R.style.MyTheme1 != theme ){ //将主题保存到sharedPreference中,以便下次启动设置主题时读取 sf.getSharedPreferences("cons",Activity.MODE_PRIVATE).edit() .putInt("theme", R.style.MyTheme1).commit(); } else { sf.getSharedPreferences("cons",Activity.MODE_PRIVATE).edit() .putInt("theme", R.style.MyTheme2).commit(); } //退出应用 android.os.Process.killProcess(android.os.Process.myPid()); } });
程序截图:
查看原文请点击这里。
0 0
- android设置主题和自定义主题的方法
- android设置主题和自定义主题的方法
- Android 设置主题的方法
- Android Studio设置主题 和 不支持中文的问题解决方法
- Android Studio设置主题和不支持中文的问题解决方法
- Android Studio设置主题 和 不支持中文的问题解决方法
- Android 自定义主题和风格
- android 自定义主题和风格
- 自定义 AlertDialog 主题的方法
- Android自定义AppCompat主题取消标题栏和状态栏方法
- 自定义view的构造方法和样式主题
- 自定义Android的风格和主题的详细使用
- Android Studio设置主题 和 不支持中文的问题解决方法 【转】
- Android系统自带主题的使用及自定义主题
- 设置 IntelliJ IDEA 主题和字体的方法
- 自定义的UINavigationController 设置UIBarButtonItem主题
- android Activity设置透明主题样式方法
- 【Android 开发教程】设置Activity的样式和主题
- PostgreSQL学习笔记1之表定义
- 程序的一些小优化
- assert()函数用法总结
- 关于Android APP在线热修复bug方案的调研(一)(AndFix)
- Android自定义Switch开关
- android设置主题和自定义主题的方法
- PostgreSQL学习笔记2之模式
- java设计模式---责任链设计模式
- 离散傅里叶变换的推导
- Android使用ListView实现时间轴可添加标题和子栏目
- Launcher上定制默认文件夹以及URL
- 存储过程是什么
- [从头学数学] 第01节 [机器小伟]的奇幻数学之旅开启
- html meta中的viewport指令