欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

Android中应用界面主题Theme使用方法和页面定时跳转应用

程序员文章站 2023-10-19 14:04:23
主题theme就是用来设置界面ui风格,可以设置整个应用或者某个活动activity的界面风格。在android sdk中内置了下面的theme,可以按标题栏title b...
主题theme就是用来设置界面ui风格,可以设置整个应用或者某个活动activity的界面风格。在android sdk中内置了下面的theme,可以按标题栏title bar和状态栏status bar是否可见来分类:
Android中应用界面主题Theme使用方法和页面定时跳转应用 
复制代码 代码如下:

android:theme="@android:style/theme.dialog" 将一个activity显示为能话框模式
android:theme="@android:style/theme.notitlebar" 不显示应用程序标题栏
android:theme="@android:style/theme.notitlebar.fullscreen" 不显示应用程序标题栏,并全屏
android:theme="theme.light" 背景为白色
android:theme="theme.light.notitlebar" 白色背景并无标题栏
android:theme="theme.light.notitlebar.fullscreen" 白色背景,无标题栏,全屏
android:theme="theme.black" 背景黑色
android:theme="theme.black.notitlebar" 黑色背景并无标题栏
android:theme="theme.black.notitlebar.fullscreen" 黑色背景,无标题栏,全屏
android:theme="theme.wallpaper" 用系统桌面为应用程序背景
android:theme="theme.wallpaper.notitlebar" 用系统桌面为应用程序背景,且无标题栏
android:theme="theme.wallpaper.notitlebar.fullscreen" 用系统桌面为应用程序背景,无标题栏,全屏
android:theme="translucent" 半透明
android:theme="theme.translucent.notitlebar" 半透明、无标题栏
android:theme="theme.translucent.notitlebar.fullscreen" 半透明、无标题栏、全屏
android:theme="theme.panel"
android:theme="theme.light.panel"

复制代码 代码如下:

android:theme="@android:style/theme.dialog" 将一个activity显示为能话框模式
android:theme="@android:style/theme.notitlebar" 不显示应用程序标题栏
android:theme="@android:style/theme.notitlebar.fullscreen" 不显示应用程序标题栏,并全屏
android:theme="theme.light" 背景为白色
android:theme="theme.light.notitlebar" 白色背景并无标题栏
android:theme="theme.light.notitlebar.fullscreen" 白色背景,无标题栏,全屏
android:theme="theme.black" 背景黑色
android:theme="theme.black.notitlebar" 黑色背景并无标题栏
android:theme="theme.black.notitlebar.fullscreen" 黑色背景,无标题栏,全屏
android:theme="theme.wallpaper" 用系统桌面为应用程序背景
android:theme="theme.wallpaper.notitlebar" 用系统桌面为应用程序背景,且无标题栏
android:theme="theme.wallpaper.notitlebar.fullscreen" 用系统桌面为应用程序背景,无标题栏,全屏
android:theme="translucent" 半透明
android:theme="theme.translucent.notitlebar" 半透明、无标题栏
android:theme="theme.translucent.notitlebar.fullscreen" 半透明、无标题栏、全屏
android:theme="theme.panel"
android:theme="theme.light.panel"

这些主题可以应用到整个应用application范围或者某个活动activity范围中。
应用application范围
在androidmanifest.xml中的application节点中设置theme属性,主题theme应用到整个应用程序中。
复制代码 代码如下:

<application
android:icon=”@drawable/icon”
android:icon=”@string/app_name”
android:icon=”@android:style/ theme.black.notitlebar”>

活动activity范围
使用java代码或者在androidmanifest.xml中对活动activity的主题进行设置,主题仅应用到当前活动中。
在androidmainifest.xml设置方法:
复制代码 代码如下:

<activity
android:name=“.about”
android:label=“@string/app_name”
android:theme=“@android:style/ theme.black.notitlebar” >

使用java代码进行设置,在当前活动activity的oncreate中进行设置:
复制代码 代码如下:

@override
public void oncreate(bundle savedinstancestate){
super.oncreate(savedinstancestate);
settheme(android.r.style.theme_translucent_notitlebar);
setcontentview(r.layout.main);
}

-------------跳转---------------------
复制代码 代码如下:

public void start() {
new thread() {
public void run() {
try {
thread.sleep(3000);
} catch (interruptedexception e) {
e.printstacktrace();
}
intent intent = new intent();
intent.setclass(welcomeactivity.this, mainactivity.class);
startactivity(intent);
finish();
}
}.start();
}

---------为按钮添按下效果-----------
复制代码 代码如下:

imagebutton1 = (imagebutton) findviewbyid(r.id.imagebutton3);
imagebutton1.setontouchlistener(new ontouchlistener() {
public boolean ontouch(view v, motionevent event) {
if (event.getaction() == motionevent.action_down) {
// 更改为按下时的背景图片
v.setbackgroundresource(r.drawable.menu_btn_f);
} else if (event.getaction() == motionevent.action_up) {
// 改为抬起时的图片
v.setbackgroundresource(r.drawable.menu_btn);
}
return false;
}
});