2013-09-16 2 views
1

Мои действия используют тему, которая устанавливает android:windowNoTitle = true. Но мне нужно показать название в некоторых действиях. Я хочу показать название в своей деятельности по телефону requestWindowFeature(), но это не работает! Любая помощь будет большой.андроидный запрос на вызов запросWindowFeature первым и показать заголовок

Спасибо.

пс: Мой activitys хава переключаться между двумя themes.The homeActivty использовать ActionBar и другие не title.These activtys не являются использовать один и тот же themes.So, когда перед использованием requestWindowFeature() он скрывался, и я просто хочу покажите это сейчас.

Вот мои коды: Defined тему:

<!-- Application theme. --> 
<style name="AppTheme" parent="AppBaseTheme"> 

    <!-- All customizations that are NOT specific to a particular API-level can go here. --> 
    <item name="android:windowAnimationStyle">@style/activityAnimation</item> 
    <item name="android:windowNoTitle">true</item> 
    <!-- <item name="android:background">@color/background_holo_light</item> --> 
</style> 

и использовать тему в приложении:

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

Получить и при необходимости изменить тему:

int mThemeId = mSettingPreferences.getInt(MySettings.THEME_ID, -1); 
    if (-1 != mThemeId) { 
     this.setTheme(mThemeId); 
    } 
    // do something to show the title 
+0

увидеть мой обновленный ответ. – Piyush

ответ

0

вы должны использовать этот метод, прежде чем ваш setContentView методом ...

requestWindowFeature(Window.FEATURE_NO_TITLE); 

ИЛИ

И да, вы можете добавить тему в файле манифеста, в котором активность вы не хотите Title..Then использовать это ..

<activity 
     android:name=".activity name" 
     android:theme="@android:style/Theme.Black.NoTitleBar" 
     android:screenOrientation="potrait" > 
    </activity> 

первое изменение этого:

if (mThemeId != -1) { 
    this.setTheme(mThemeId); 
} 

и после этого вы можете использовать

requestWindowFeature(Window.FEATURE_CUSTOM_TITLE); 
+0

Название уже скрыто. Можете ли вы понять мой вопрос? – cnbleu

+0

он хочет показать и спрятать свой тимат динамически – Developer

+0

@ Karain означает просто хочу показать название в некоторых действиях и в некоторых видах деятельности, не используя requestWindowFeature() ?? – Piyush

0
 <activity 
      android:name=".HistoryImage" 
      android:screenOrientation="sensorPortait" 
      android:theme="@android:style/Theme.Black.NoTitleBar" > 
     </activity> 
     <activity 
      android:name=".HistoryVideo" 
      android:screenOrientation="sensorPortait" > 
     </activity> 
     <activity 
      android:name=".HistoryVideo_2" 
      android:theme="@android:style/Theme.Black.NoTitleBar" 
      android:screenOrientation="sensorPortait" > 
     </activity> 
0

деятельности, в которых вы не хотите, чтобы показать строку заголовка. просто сделайте это, чтобы скрыть строку заголовка. Befor setcontentView requestWindowFeature(Window.FEATURE_NO_TITLE);

1
this.requestWindowFeature(Window.FEATURE_NO_TITLE); 

setContentView(R.layout.yourlayout); 

Вам не нужно применять какие-либо Тема, если вы используете это.

+0

Мои действия hava будут переключаться между двумя темами. HomeActivty использует панель действий, а другие - нет. Эти действия используют одни и те же темы. Поэтому, когда перед использованием requestWindowFeature() он скрывался, и я просто хочу показать это сейчас. – cnbleu

+0

показать скриншоты, что вы хотите, или показать мне свой код. – Dev

+0

мой код обновлен. – cnbleu

0

Я надеюсь, что это поможет вам

protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     requestWindowFeature(Window.FEATURE_NO_TITLE); 
     setContentView(R.layout.activity_page); 
Смежные вопросы