A View
im ActionBar
zentriert nicht mit Action Items
in einem xml menu
, so weit erreicht werden, wie ich sagen kann. Es kann jedoch implementiert werden, indem ein benutzerdefiniertes Layout für die ActionBar
festgelegt wird. Ein einfaches Beispiel:
Ein Activity
:
public class MainActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ActionBar actionBar = getActionBar();
actionBar.setDisplayOptions(ActionBar.DISPLAY_SHOW_CUSTOM);
actionBar.setDisplayShowHomeEnabled(true);
actionBar.setCustomView(R.layout.actionbar_layout);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.activity_main, menu);
return true;
}
}
wo actionbar_layout
ist:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<SearchView
android:id="@+id/mySearchView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:iconifiedByDefault="false" />
</RelativeLayout>
Dies schafft auf einer 7 '' Tablette:
Notiere die iconifiedByDefault
Attribut auffestgelegtauf der SearchView
, die es erzwingt, erweitert und nicht nur als ein Symbol angezeigt. Dies kann erfordern, dass Sie hide the softkeyboard programmatically oder es wird geöffnet gestartet werden, wenn die Aktivität gestartet wird.
Haben Sie versucht, Android: layout_gravity = "center_horizontal"? – MillyMonster
Ja, aber ohne Erfolg. – Whymarrh
Hmm seltsam. Welche Art von Layout verwenden Sie? – MillyMonster