ActionBar avec titre personnalisé
Bonjour,
Je suis en train de mettre en place une "actionBar".
Cela parait particulièrement intéressant, sauf que je souhaiterais ajouter un titre personnalisé contenant notamment des boutons (Acceuil, retour, déconnexion, etc. ) qui ne doivent pas apparaitre dans la barre en bas de l'application.
J'ai vu sur le projet "GreenDroid" que cela semble possible, mais je ne parviens pas à trouver comment.
Également, est-il possible de dire que des éléments affichés en "Portrait" n'apparaissent pas en "Paysage" ? (5 boutons dans l'action bar "Portrait", les 2 derniers boutons sont affichés dans l'actionBar "Paysage" par exemple).
Pour faciliter la compréhension de la demande, je vous fournis le code en relation avec cette demande :
Fichier "HomeActivity" :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
|
public class HomeActivity extends Activity {
public void onCreate(Bundle savedInstanceState) {
// getWindow().requestFeature(Window.FEATURE_PROGRESS);
super.onCreate(savedInstanceState);
setContentView(R.layout.advanced_parameter);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.menu, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
Toast.makeText(this, "MenuItem " + item.getTitle() + " selected.", Toast.LENGTH_SHORT).show();
return true;
}
} |
advanced_parameter.xml :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
|
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/RelativeLayout01"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<WebView
android:id="@+id/webkit_adv_param"
android:layout_width="fill_parent"
android:layout_height="fill_parent" />
</RelativeLayout> |
res/menu/menu.xml
Code:
1 2 3 4 5 6 7 8 9
|
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android" >
<item android:id="@+id/open" android:showAsAction="ifRoom|withText" android:title="Open" android:icon="@drawable/ic_action_mail"></item>
<item android:id="@+id/save" android:showAsAction="ifRoom|withText" android:title="Save" android:icon="@drawable/ic_action_mail"></item>
<item android:id="@+id/close" android:showAsAction="ifRoom|withText" android:title="Close" android:icon="@drawable/ic_action_mail"></item>
<item android:id="@+id/history" android:showAsAction="ifRoom|withText" android:title="History" android:icon="@drawable/ic_action_stat"></item>
<item android:id="@+id/settings" android:showAsAction="ifRoom|withText" android:title="Settings" android:icon="@drawable/ic_action_settings"></item>
</menu> |
Android Manifest :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
|
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="home.ihmandroid" android:versionCode="1" android:versionName="1.0">
<uses-sdk android:minSdkVersion="15" />
<!-- Permettre à l'application de connaitre les données du téléphone -->
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<!-- Permettre à l'application d'utiliser Internet -->
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<application android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:uiOptions="splitActionBarWhenNarrow">
...
</manifest> |
Avez-vous une idée de comment faire pour surcharger le titre ?
NB : avant j'utilisais CustomWindow (http://www.londatiga.net/it/how-to-c...le-in-android/), mais ceci est incompatible avec "ActionBar".