安卓Activity的自定义标题的问题

来源:互联网 发布:游戏鼠标 知乎 编辑:程序博客网 时间:2024/06/03 15:23

<span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);">在一般的自定义标题里,都说明只需要如下代码:</span>

requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);setContentView(R.layout.activity_main);getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.titlebar_self);

但实际上,如果新建一个工程,加上如上代码,并在layout中定义标题样式如下:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"         android:orientation="horizontal"      android:layout_width="fill_parent"       android:layout_height="50dp"    android:background="#f2f8f8">      <Button        android:id="@+id/imageButton1"        android:layout_width="40dp"        android:layout_height="40dp"              android:layout_centerVertical="true"        android:layout_alignParentLeft="true"        android:layout_marginLeft="20dp"         />            <TextView           android:layout_centerInParent="true"          android:layout_width="wrap_content"          android:layout_height="match_parent"          android:text="自定义标题栏"          android:textSize="20sp"          android:gravity="center_vertical"          />    <Button        android:id="@+id/imageButton1"        android:layout_width="40dp"        android:layout_height="40dp"        android:layout_centerInParent="true"        android:layout_alignParentRight="true"        android:layout_marginRight="20dp"        />    </RelativeLayout>  

但运行时,会自动关闭,这是因为系统默认的theme带有标题,所以,需要对该activity加上自定义theme

android:theme="@style/titleBarStyle"

并在value下建立selftheme.xml,内容如:

<resources xmlns:android="http://schemas.android.com/apk/res/android"><style name="titleBarStyle" parent="android:Theme"></style></resources>

可以加上自定义的样式。


再运行即可使用自定义标题。

0 0