ActionBarSherlock avec RelativeLayout personnalisé ne montre pas le titre du texte

ActionBar ne présente pas de titre lors de l'utilisation de la mise en page relative. Et lorsque je n'utilise pas RelativeLayout, les éléments ne sont pas alignés sur la droite. Ne me dites pas d'utiliser les éléments de menu comme solution. Cela doit être personnalisé.

Voici comment je l'ai configuré:

ActionBar bar = getSupportActionBar(); bar.setDisplayOptions( ActionBar.DISPLAY_HOME_AS_UP | ActionBar.DISPLAY_SHOW_CUSTOM | ActionBar.DISPLAY_SHOW_HOME | ActionBar.DISPLAY_SHOW_TITLE | ActionBar.DISPLAY_USE_LOGO); bar.setTitle(title); bar.setCustomView(actionBar); this.setTitle(title); 

C'est quand l'alignement est bon, mais le titre n'est pas affiché

 <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="wrap_content" android:layout_height="wrap_content"> <LinearLayout android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerVertical="true" android:layout_alignParentRight="true" > <ImageButton android:id="@+id/acion_add" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/menu_label_add" style="?attr/actionButtonStyle" /> <ImageButton android:id="@+id/action_prev" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/menu_label_prev" style="?attr/actionButtonStyle" /> <ImageButton android:id="@+id/action_next" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/menu_label_next" style="?attr/actionButtonStyle" /> </LinearLayout> </RelativeLayout> 

Capture d'écran

Et voici la disposition où le titre est affiché, mais les éléments sont alignés sur la gauche

 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="right" android:gravity="right"> <ImageButton android:id="@+id/acion_add" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/menu_label_add" style="?attr/actionButtonStyle" /> <ImageButton android:id="@+id/action_prev" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/menu_label_prev" style="?attr/actionButtonStyle" /> <ImageButton android:id="@+id/action_next" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/menu_label_next" style="?attr/actionButtonStyle" /> </LinearLayout> 

Capture d'écran

2 Solutions collect form web for “ActionBarSherlock avec RelativeLayout personnalisé ne montre pas le titre du texte”

J'ai eu le même problème et j'ai trouvé ce lien: https://groups.google.com/forum/?fromgroups=#!topic/actionbarsherlock/He6gst4nvR0

Cela a fonctionné pour moi:

disposition:

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

code:

 import com.actionbarsherlock.app.ActionBar.LayoutParams; ... LayoutParams lp = new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT, Gravity.RIGHT | Gravity.CENTER_VERTICAL); getSupportActionBar().setCustomView(segmentView, lp); 

Il existe une solution de contournement en ajoutant TextView avec titleTextStyle à la mise en page. Si l'un d'entre vous a une meilleure réponse, je suis impatient de le voir.

Ma solution de contournement:

 <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="wrap_content" android:layout_height="wrap_content"> <TextView android:id="@+id/player_title" android:layout_width="0dp" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_centerVertical="true" android:layout_toLeftOf="@+id/buttons_holder" android:ellipsize="end" style="@style/TextAppearance.Sherlock.Widget.ActionBar.Title"/> <LinearLayout android:id="@+id/buttons_holder" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerVertical="true" android:layout_alignParentRight="true" > <ImageButton android:id="@+id/acion_add" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/menu_label_add" style="?attr/actionButtonStyle" /> <ImageButton android:id="@+id/action_prev" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/menu_label_prev" style="?attr/actionButtonStyle" /> <ImageButton android:id="@+id/action_next" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/menu_label_next" style="?attr/actionButtonStyle" /> </LinearLayout> </RelativeLayout> 
coAndroid est un fan Android de Google, tout sur les téléphones Android, Android Wear, Android Dev et Android Games Apps.