Android之自定义标题

  我们知道我们创建的每一个Activity,系统默认为我们提供了一下黑色的标题,本篇我将带领大家接触一下如何实现自定义标题样式。相比系统为我们提供的样式,自定义标题可以满足我们唯心所欲的自定义设计,使我们的界面看上去更加的高端上档次,以便更好的吸引用户的使用。下面开始今天的内容介绍:

  1、既然是自定义标题样式,首先我们需要设计一个自定义标题布局,通过这个布局文件,我们可以随心所欲的设计我们的标题样式(title.xml):

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="horizontal"
    >

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textColor="#aa0000"
        android:text="这是我的自定义标题"
        />
    <Button
        android:id="@+id/button"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="更多"
        />

</LinearLayout>

  2、写好布局文件了,下面我们开始设计标题的样式,项目res目录下styles.xml:

<resources>

    <style name="itcastTheme" parent="android:Theme">
         <item name="android:windowContentOverlay">@color/nonecolor</item>
         <item name="android:windowTitleSize">44dp</item><!-- 设置自定义标题的宽度 -->
         <item name="android:windowTitleBackgroundStyle">@style/itcastbg</item><!-- 自定义标题的样式 -->
    </style>

    <style name="itcastbg">
        <item name="android:background">@drawable/rectangle</item>
    </style>

</resources>

  3、红色字体部分,是我通过drawable文件下的rectangle.xml文件实现的一个标题背景:

<?xml version="1.0" encoding="utf-8"?>
<shape
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle" >
    <gradient
        android:angle="270"
        android:endColor="#1DC9CD"
        android:startColor="#A2E0FB" />
    <padding
        android:left="2dp"
        android:top="2dp"
        android:right="2dp"
        android:bottom="2dp" />
</shape>

  4、到这里我么就可以开始修改我们的主Activity:

public class MainActivity extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);

        setContentView(R.layout.activity_main);

        getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.title);//设置我们自定义标题
        Button  mybutton = (Button)findViewById(R.id.button);
        mybutton.setOnClickListener(new OnClickListener() {
            @Override
            public void onClick(View v) {
                Toast.makeText(MainActivity.this, "尽请期待", Toast.LENGTH_SHORT).show();
            }
        });
    }
}

  需要注意的是红色部分必须写在引用布局文件之前,不然达不到效果。

  5、最后我们需要在AndroidManifest.xml文件中,为我们的Activity设置一下样式:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="cn.edu.hpu.activity_title"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk
        android:minSdkVersion="8"
        android:targetSdkVersion="21" />

    <application
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name">
        <activity
            android:name=".MainActivity"
            android:theme="@style/itcastTheme">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>

</manifest>

  好了,关于Android自定义标题的介绍就说完了,感兴趣的小童鞋可以实现一下。新手学习,高手交流。

时间: 2024-10-16 05:12:33

Android之自定义标题的相关文章

Android peferenceActivity 自定义标题简单方法

Android peferenceActivity 自定义标题简单方法 peferenceActivity 完全使用定义好的布局. 因此不能简单象其它好窗口进行自定,现在我们需要加 一个自定义标题,比如象其它窗口一样加一个统一topbar. 假设这个topbar的布局是 title.xml 一.标准自定义标题栏方法 Android 提供自定义标题栏方法 我们简单实现. @Override protected void onCreate(Bundle savedInstanceState) { f

分享:Android之自定义标题

我们知道我们创建的每一个Activity,系统默认为我们提供了一下黑色的标题,本篇我将带领大家接触一下如何实现自定义标题样式.相比系统为我们提供的样式,自定义标题可以满足我们唯心所欲的自定义设计,使我们的界面看上去更加的高端上档次,以便更好的吸引用户的使用.下面开始今天的内容介绍: 1.既然是自定义标题样式,首先我们需要设计一个自定义标题布局,通过这个布局文件,我们可以随心所欲的设计我们的标题样式(title.xml): <?xml version="1.0" encoding=

Android对话框自定义标题

Android自带的对话框标题不好看,如果我们需要给弹出的对话框设置一个自己定义的标题,可以使用AlertDialog.Builder的setCustomTitle()方法. 定义一个对话框标题的title.xml文件: <?xml version="1.0" encoding="UTF-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android

Android:自定义标题栏

现在很多的Android程序都在标题栏上都显示了一些按钮和标题,这里尝试做个实例 在onCreate中添加: //自定义标题 requestWindowFeature(Window.FEATURE_CUSTOM_TITLE); setContentView(R.layout.main); //设置标题为某个layout getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.titlebar); 布局文件: <?xml ve

【转】Android之自定义Adapter的ListView

http://www.cnblogs.com/topcoderliu/archive/2011/05/07/2039862.html 在开发中,我们经常使用到ListView这个控件.Android的API也提供了许多创建ListView适配器的快捷方式.例如ArrayAdapter.SimpleAdapter和SimpleCursorAdapter等.但你是否发现,如果采用这些系统自带的适配器,对于事件的响应只能局限在一个行单位.假设一行里面有一个按钮和一个图片控件,它们之间的响应操作是不一样

include标签布局和自定义标题

在Android的性能优化是,可以使用抽象布局标签(include,ViewStub,merge),include去除不必要的嵌套和View节点,merge减少不必要的inflate以及其他Layout,viewstub可以隐藏view. include标签常用于将布局中的公共部分提取出来供其他layout公用,以实现布局模块化,这在布局编写方便提供了便利. activity_main.xml <Linear xmlns:android="http://schemes.android.co

ActionBar(2)自定义标题与菜单中的文字样式

自定义标题文字样式 标题样式是ActionBar样式的一部分,所以要先定义ActionBar的样式 <style name="AppTheme" parent="AppBaseTheme"> <item name="android:actionBarStyle">@style/CustomActionBar</item> </style> 然后在ActionBar的样式中通过android:titl

Android 修改Activity标题样式 actionBar

修改Activity的标题样式及ActionBar ,代码如下 <!-- Application theme. --> <style name="AppTheme" parent="AppBaseTheme"> <!-- All customizations that are NOT specific to a particular API-level can go here. --> <!-- <item name=

【原创】android——Tabhost 自定义tab+底部实现+intent切换内容

1,实现tabhost自定义格式,再此仅仅显示背景和文字,效果图预览:(底边栏所示) (图片变形) 2,xml配置 activity_user的XML配置  1 <TabHost xmlns:android="http://schemas.android.com/apk/res/android" 2 xmlns:tools="http://schemas.android.com/tools" 3 android:id="@+id/tabhost&qu