Android:自定义标题栏

因为默认的标题栏是只显示应用名称的,如果想在标题栏上加上一些按钮或更改下样式就要自己改下代码下,具体步骤如下:

 

  1. 在activity类中的onCreate方法中添加几行代码
    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_bar);
    
            
    
            //更新标题栏中按钮的字体大小
    
            Button btnManage = (Button) findViewById(R.id.btn_manage);
    
            btnManage.setTextSize(10);

    主要就是这两行:
    requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);
    这行放在setContentView前面

    getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.title_bar);
    这行放在setContentView后面,其中的R.layout.title_bar就是我们的自定义layout

  2. 创建自定义的layout,替换框架默认的标题栏,
    <?xml version="1.0" encoding="utf-8"?>
    
    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    
        android:layout_width="fill_parent"
    
        android:layout_height="wrap_content"
    
        android:gravity="center_vertical"
    
        android:orientation="horizontal" >
    
    
    
        <TextView
    
            android:id="@+id/text_app_name"
    
            android:layout_width="wrap_content"
    
            android:layout_height="wrap_content"
    
            android:layout_marginTop="2dip"
    
            android:layout_marginLeft="10dip"
    
            android:textColor="#fff"
    
            android:text="@string/app_name" />
    
    
    
        <Button
    
            android:id="@+id/btn_manage"
    
            android:layout_width="wrap_content"
    
            android:layout_height="wrap_content"
    
            android:layout_gravity="right"
    
            android:layout_marginTop="4dip"
    
            android:layout_alignParentRight="true"
    
            android:paddingBottom="5dip"
    
            android:paddingTop="0dip"
    
            android:textColor="#006400"
    
            android:text="@string/btn_manage" />
    
    
    
    </RelativeLayout>

  3. 这样就搞定了,最后看下效果
    Android:自定义标题栏

 

 

你可能感兴趣的:(android)