Dans mon application, je souhaite utiliser la Theme.NoTitleBar, mais je ne veux pas non plus perdre le thème interne de l'OS Android .. J'ai cherché sur le net et j'ai trouvé la réponse suivante .. J'ai modifié mon styles.xml et ajouté la ligne de code suivante.
Inside values / styles.xml
<style name="Theme.Default" parent="@Android:style/Theme"></style>
<style name="Theme.NoTitle" parent="@Android:style/Theme.NoTitleBar"></style>
<style name="Theme.FullScreen" parent="@Android:style/Theme.NoTitleBar.Fullscreen"></style>
Inside values-v11/styles.xml
<style name="Theme.Default" parent="@Android:style/Theme.Holo"></style>
<style name="Theme.NoTitle" parent="@Android:style/Theme.Holo.NoActionBar"></style>
<style name="Theme.FullScreen" parent="@Android:style/Theme.Holo.NoActionBar.Fullscreen"></style>
Inside values-v14/styles.xml
<style name="Theme.Default" parent="@Android:style/Theme.Holo.Light"></style>
<style name="Theme.NoTitle" parent="@Android:style/Theme.Holo.Light.NoActionBar"></style>
<style name="Theme.FullScreen" parent="@Android:style/Theme.Holo.Light.NoActionBar.Fullscreen"></style>
Dans la balise application du fichier Manifest, j'ai ajouté un attribut de:
Android:theme="@style/Theme.NoTitle"
Mais lorsque j'essaie d'exécuter le code, les images de mon application deviennent floues. Mais lorsque j'utilise le tag suivant:
Android:theme="@Android:style/Theme.NoTitleBar"
ou
Android:theme="@Android:style/Theme.Light.NoTitleBar"
ou
Android:theme="@Android:style/Theme.Black.NoTitleBar"
Les images de l'application se présentent sous la forme correcte ... Mais dans ce cas, je perds tous les thèmes du nouveau système d'exploitation Android.
S'il vous plaît, aidez-moi, comment puis-je utiliser le thème NoTitleBar sans perdre les images et le thème natif?.
Code pour la mise en page:
<RelativeLayout xmlns:Android="http://schemas.Android.com/apk/res/Android"
xmlns:tools="http://schemas.Android.com/tools"
Android:id="@+id/mainScreen"
Android:layout_width="match_parent"
Android:layout_height="match_parent"
tools:context=".MainActivity" >
<include
Android:id="@+id/main_top_bar"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
layout="@layout/top_bar_title" />
<RelativeLayout
Android:id="@+id/container_bar1"
Android:layout_width="match_parent"
Android:layout_height="wrap_content"
Android:layout_below="@+id/main_top_bar"
Android:layout_marginTop="-3dp"
Android:background="@drawable/tab_nav_bar" >
</RelativeLayout>
<RelativeLayout
Android:id="@+id/container_bar2"
Android:layout_width="match_parent"
Android:layout_height="wrap_content"
Android:layout_below="@+id/container_bar1"
Android:background="@drawable/location_nav_bar" >
<TableLayout
Android:id="@+id/map_bar"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:layout_centerVertical="true"
Android:layout_marginLeft="10dp"
Android:paddingBottom="5dp"
Android:background="@drawable/map_bar_bg" >
<TableRow
Android:id="@+id/tableRow1"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content" >
<Button
Android:id="@+id/MapPointer"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:layout_marginLeft="8dp"
Android:background="@drawable/map_pointer" />
<TextView
Android:id="@+id/MapSeperator"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:layout_marginLeft="2dp"
Android:layout_marginTop="2dp"
Android:text="|"
Android:textColor="#979ca0"
Android:textSize="20dp" />
<com.pnf.myevent.CustomTextView
Android:id="@+id/DisplayLocation"
Android:layout_width="80dp"
Android:layout_height="wrap_content"
Android:ellipsize="Marquee"
Android:fadingEdge="horizontal"
Android:marqueeRepeatLimit="Marquee_forever"
Android:paddingLeft="5dp"
Android:scrollHorizontally="true"
Android:singleLine="true"
Android:textColor="#adabad"
Android:textSize="12dp" />
<Button
Android:id="@+id/RefreshBtn"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:layout_marginLeft="3dp"
Android:background="@drawable/refresh_button" />
</TableRow>
</TableLayout>
<TableLayout
Android:id="@+id/calendar_bar"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:layout_alignParentRight="true"
Android:layout_centerVertical="true"
Android:layout_marginRight="10dp" >
<TableRow
Android:id="@+id/tableRow2"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content" >
<Button
Android:id="@+id/MonthBtn"
Android:layout_width="40dp"
Android:layout_height="wrap_content"
Android:layout_weight="1"
Android:background="@drawable/month_button" />
<Button
Android:id="@+id/TodayBtn"
Android:layout_width="40dp"
Android:layout_height="wrap_content"
Android:layout_weight="1"
Android:background="@drawable/today_button" />
<Button
Android:id="@+id/WeekBtn"
Android:layout_width="40dp"
Android:layout_height="wrap_content"
Android:layout_weight="1"
Android:background="@drawable/week_button" />
</TableRow>
</TableLayout>
</RelativeLayout>
<RelativeLayout
Android:id="@+id/container_bar3"
Android:layout_width="match_parent"
Android:layout_height="wrap_content"
Android:layout_below="@+id/container_bar2"
Android:background="@drawable/cal_nav_bar" >
<Button
Android:id="@+id/CalPrevious"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:layout_alignParentLeft="true"
Android:layout_marginLeft="30dp"
Android:layout_marginTop="5dp"
Android:background="@drawable/left_arrow_button" />
<com.pnf.myevent.CustomTextView
Android:id="@+id/CalTitle"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:layout_centerHorizontal="true"
Android:layout_marginTop="5dp"
Android:shadowColor="#ffffff"
Android:shadowDx="0"
Android:shadowDy="2"
Android:shadowRadius="1"
Android:text="Title"
Android:textColor="#666666"
Android:textSize="15dp" />
<Button
Android:id="@+id/CalNext"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:layout_alignParentRight="true"
Android:layout_marginRight="30dp"
Android:layout_marginTop="5dp"
Android:background="@drawable/right_arrow_button" />
</RelativeLayout>
<RelativeLayout
Android:id="@+id/container_bar4"
Android:layout_width="match_parent"
Android:layout_height="200dp"
Android:layout_below="@+id/container_bar3"
Android:background="#c8c9cc" >
<GridView
xmlns:Android="http://schemas.Android.com/apk/res/Android"
Android:id="@+id/gridView1"
Android:layout_width="match_parent"
Android:layout_height="match_parent"
Android:gravity="center"
Android:horizontalSpacing="2dp"
Android:listSelector="#00000000"
Android:numColumns="7"
Android:stretchMode="columnWidth"
Android:verticalSpacing="2dp" />
</RelativeLayout>
<RelativeLayout
Android:id="@+id/footer_bar"
Android:layout_width="match_parent"
Android:layout_height="wrap_content"
Android:layout_below="@+id/container_bar4" >
<ListView
Android:id="@+id/CalendarList"
Android:layout_width="match_parent"
Android:layout_height="wrap_content"
Android:listSelector="#00000000"
Android:cacheColorHint="#00000000"
Android:divider="#dedede"
Android:dividerHeight="1dp"
Android:drawSelectorOnTop="false" />
</RelativeLayout>
si vous souhaitez conserver le style d'origine de votre interface utilisateur et supprimer la barre de titre sans aucun effet, vous devez supprimer la barre de titre de votre activité plutôt que le manifeste. laissez le style de thème d'origine que vous aviez dans le manifeste et dans chaque activité pour laquelle vous ne voulez pas de barre de titre, utilisez this.requestWindowFeature(Window.FEATURE_NO_TITLE);
dans la méthode oncreate()
before setcontentview()
comme ceci:
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
this.requestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(R.layout.activity_signup);
...
}
Pour masquer la barre d’action, ajoutez le code ci-dessous dans Valeurs/Styles.
<style name="CustomActivityThemeNoActionBar" parent="@Android:style/Theme.Holo.Light">
<item name="Android:windowActionBar">false</item>
<item name="Android:windowNoTitle">true</item>
</style>
Ensuite, dans votre fichier AndroidManifest.xml, ajoutez le code ci-dessous dans l'activité requise.
<activity
Android:name="com.newbelievers.Android.NBMenu"
Android:label="@string/title_activity_nbmenu"
Android:theme="@style/CustomActivityThemeNoActionBar">
</activity>
Dans votre utilisation manifeste: -
Android:theme="@style/AppTheme" >
dans styles.xml: -
<!-- Application theme. -->
<style name="AppTheme" parent="AppBaseTheme">
<item name="Android:windowActionBar">false</item>
<item name="Android:windowNoTitle">true</item>
</style>
De manière surprenante, cela fonctionne comme vous le souhaitez, mais le même parent de AppBaseTheme dans AppTheme ne fonctionne pas.
Pourquoi changez-vous Android os intégré thème .
Selon votre activité Exige Vous devez implémenter de cette façon
this.requestWindowFeature(Window.FEATURE_NO_TITLE);
selon @arianoo
indique que vous devez utiliser cette fonctionnalité.
Je pense que c'est un meilleur moyen de masquer le thème de la barre de titre.
Dans votre styles.xml, modifiez le style "AppTheme" comme
<!-- Application theme. -->
<style name="AppTheme" parent="AppBaseTheme">
<item name="Android:windowActionBar">false</item>
<item name="Android:windowNoTitle">true</item>
</style>
utilisez Android:theme="@Android:style/Theme.NoTitleBar
dans la balise d'application du fichier de manifeste pour supprimer la barre de titre de l'application entière ou insérez-la dans la balise d'activité pour supprimer la barre de titre d'un seul écran d'activité.
this.requestWindowFeature(getWindow().FEATURE_NO_TITLE);