2010-07-01 7 views
10

Tôi có một thanh tiêu đề tùy chỉnhAndroid: Tuỳ chỉnh Title Bar

requestWindowFeature(Window.FEATURE_CUSTOM_TITLE); 
setContentView(R.layout.activities); 
getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.custom_title); 

Những công trình về cơ bản tốt. Vấn đề là cho đến khi mã trên được gọi là thanh tiêu đề mặc định được hiển thị. Tôi không muốn một thanh tiêu đề ở đó, nói cách khác trước khi tôi xuất hiện không có tiêu đề nào sẽ xuất hiện.

Thêm này để manifest:

<application android:theme="@android:style/Theme.NoTitleBar"> 

dẫn đến một lực lượng gần. Tệp kê khai của tôi trông giống như thế này

<application android:icon="@drawable/icon" android:label="@string/app_name" 
    android:theme="@style/My_Theme"> 

Nơi tôi cần my_Theme vì nó đặt màu nền, đặt màu nền trong chủ đề khách hàng của tôi dẫn đến một vùng màu xám xung quanh backround màu của tôi. Vì vậy, ngay cả khi không có lực lượng gần tôi không chắc chắn nếu không có tiêu đề sẽ giúp đỡ.

Bất kỳ ý tưởng nào?

Cảm ơn.

Trả lời

14

Tôi gặp vấn đề tương tự như bạn.

Sự cố xảy ra với nội dung bạn có trong phong cách của mình.

Hãy thử điều này:

<?xml version="1.0" encoding="utf-8"?> 
<resources> 
    <style name="My_Theme"> 
     <item name="android:windowTitleSize">35dp</item> 
     <item name="android:windowTitleBackgroundStyle">@android:color/black</item> 
    </style> 
</resources> 
+0

Cảm ơn màu đen trên nền đen làm thủ thuật để ẩn mặc định. – paradroid666

+1

Bạn cũng có thể sử dụng '@android: color/transparent'. – eidylon

+0

' 1dp' giải quyết được vấn đề của tôi. – GAMA

-1

của bạn bị treo ứng dụng vì trong mã của bạn, bạn gọi Title Bar từ các tính năng cửa sổ và ở phía bên kia bạn tắt nó thông qua biểu hiện. Về cơ bản bạn không thể làm điều này, nó không chính xác về mặt logic. Bạn cần sửa đổi thanh tiêu đề của mình để không xóa nó.

2

Cái này là người duy nhất đối với tôi, đó ngăn ngừa sự mặc định-tiêu đề trước khi tiêu đề tùy chỉnh của tôi được bắt đầu:

<?xml version="1.0" encoding="utf-8"?> 
<resources xmlns:android="http://schemas.android.com/apk/res/android"> 

    <style name="CustomWindowTitleStyle"> 
     <item name="android:textColor">@android:color/transparent</item> 
    </style> 

    <style name="CustomTheme" parent="@android:style/Theme.Holo"> 
     <item name="android:windowActionBar">false</item> 
     <item name="android:windowTitleBackgroundStyle">@android:color/transparent</item> 
     <item name="android:windowTitleSize">50dp</item> 
     <item name="android:windowTitleStyle">@style/CustomWindowTitleStyle</item> 
    </style> 

</resources> 
0

bạn cũng nên kiểm tra xem customTitle được hỗ trợ bởi nó hay không.

Boolean customTitleSupported = requestWindowFeature(Window.FEATURE_CUSTOM_TITLE); 
     setContentView(R.layout.main); 



if (customTitleSupported) { 
    getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE,R.layout.custom_title); 

}