Макет меню панели действий - PullRequest
2 голосов
/ 13 февраля 2012

Я использую библиотеку ActionbarSherlock для реализации панели действий для платформы Android 2.1 API 7. Библиотека Шерлока успешно импортирована в мой собственный проект.

Тогда в моем проекте 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 вышеупомянутого меню, отображаются в правой части панели действий, а левая часть панели действий остается левой пусто .

Вы, наверное, уже заметили в моем коде активности, у меня есть:

actionBar.setDisplayShowHomeEnabled(false);
actionBar.setDisplayShowTitleEnabled(false);

Вышеуказанные две строковые коды определены в моем Activity onStart() обратном вызове, который отключает текст и значок панели действий по умолчанию.

Но как сделать так, чтобы мои пользовательские элементы, определенные в файле xml меню, отображались равномерно на панели действий вместо того, чтобы показываться только справа от панели действий?

...