Android中theme的用法
2012-08-28 21:18
148 查看
Theme在android的可以采用如下两种办法 :
一,在AndroidManifest.xml文件中,对Activity元素添加andorid:theme属性 ,如文中红色部分。
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="mike.lei.shen"
android:versionCode="1"
android:versionName="1.0">
<application android:icon="@drawable/icon" android:label="@string/app_name">
<activity android:name=".TestActivity"
android:label="@string/app_name"
android:theme="@android:style/Theme.Light"
>
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
二 ,在java代码中设置 Theme。
package mike.lei.shen;
import android.app.Activity;
import android.content.res.Resources;
import android.os.Bundle;
import android.widget.TextView;
public class TestActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
this.setTheme(android.R.style.Theme_Light);
super.onCreate(savedInstanceState);
//this.setTheme(android.R.style.Theme_Light);
setContentView(R.layout.main);
TextView tv = (TextView)findViewById(R.id.TxtHello);
tv.setText("screen with Light theme!");
}
}
注意,红色代码的位置很重要,API中建议在setContentView之前调用,但在android2.3中是没有用的(其他平台可能也有这个问题)
必须在 super.onCreate(savedInstanceState)之前调用。
两种方法的调用效果图 :
一,在AndroidManifest.xml文件中,对Activity元素添加andorid:theme属性 ,如文中红色部分。
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="mike.lei.shen"
android:versionCode="1"
android:versionName="1.0">
<application android:icon="@drawable/icon" android:label="@string/app_name">
<activity android:name=".TestActivity"
android:label="@string/app_name"
android:theme="@android:style/Theme.Light"
>
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
二 ,在java代码中设置 Theme。
package mike.lei.shen;
import android.app.Activity;
import android.content.res.Resources;
import android.os.Bundle;
import android.widget.TextView;
public class TestActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
this.setTheme(android.R.style.Theme_Light);
super.onCreate(savedInstanceState);
//this.setTheme(android.R.style.Theme_Light);
setContentView(R.layout.main);
TextView tv = (TextView)findViewById(R.id.TxtHello);
tv.setText("screen with Light theme!");
}
}
注意,红色代码的位置很重要,API中建议在setContentView之前调用,但在android2.3中是没有用的(其他平台可能也有这个问题)
必须在 super.onCreate(savedInstanceState)之前调用。
两种方法的调用效果图 :
相关文章推荐
- Android Style、Theme基本用法
- android的theme的用法
- Android 下style和theme的用法
- Android中的style和theme的用法
- Android入门之Style与Theme用法实例解析
- Android中theme的用法
- android Bitmap用法总结
- Android Design Support Library(一):FloatingActionButton、TextInputLayout、TextInputEditText简单用法
- Android之Adapter用法总结
- Android图片加载框架最全解析(一),Glide的基本用法
- Android Theme和Style切换UI
- Android中Parcelable接口用法
- Android高级控件系列之ListView的用法
- android Theme使用二
- Android 事件总线OTTO用法快速入门
- android背景选择器selector用法汇总
- Android Intent 用法全面总结
- Android属性动画完全解析(上),初识属性动画的基本用法
- Android之Adapter用法总结
- android编写Service入门用法与教程