ActionbarSherlockライブラリを使用して、Android 2.1 API 7 プラットフォームのアクション バーを実装しています。Sherlock ライブラリが自分のプロジェクトに正常にインポートされました。
次に、私のプロジェクトでは、次のものがありますres/menu/action_menu.xml
。
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@+id/test1"
android:title="@string/test_1"
android:showAsAction="ifRoom"
/>
<item android:id="@+id/test2"
android:title="@string/test_2"
android:showAsAction="ifRoom"
/>
</menu>
マイ アクティビティ:
import android.support.v4.app.ActionBar;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentActivity;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentTransaction;
import android.support.v4.view.Menu;
import android.support.v4.view.MenuItem;
public class MyActivity extends FragmentActivity {
@Override
protected void onStart() {
super.onStart();
ActionBar actionBar = getSupportActionBar();
actionBar.setDisplayHomeAsUpEnabled(true);
actionBar.setDisplayShowHomeEnabled(false);
actionBar.setDisplayShowTitleEnabled(false);
}
...
@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.action_menu, menu);
return true;
}
}
上記のコードを使用すると、アプリケーションにアクション バーが表示されます。しかし問題は、上記のメニュー xml ファイルで定義されたすべての項目がアクション バーの右側に表示され、アクション バーの左側部分が空白のままになっていることです。
あなたはおそらく私のActivityコードですでに気づいているでしょう、私は持っています:
actionBar.setDisplayShowHomeEnabled(false);
actionBar.setDisplayShowTitleEnabled(false);
上記の 2 つの行コードは、アクション バーのデフォルトのテキストとアイコンを無効にするアクティビティコールバックで定義されています。 onStart()
しかし、メニュー xml ファイルで定義されたカスタム アイテムを、アクション バーの右側だけに表示するのではなく、アクション バーに均等に表示するにはどうすればよいでしょうか?