Как я могу удалить заголовок и значок полностью в Actionbar sherlock?
Я использую панель действий Sherlock, но мне нужно удалить заголовок и значок из панели.
Я использовал
getSupportActionBar().setDisplayShowHomeEnabled(false);
getSupportActionBar().setDisplayShowTitleEnabled(false);
Это сработало, значок и название исчезли, но мои позиции появились справа. Есть ли способ полностью удалить название и значок, а не скрывать их. Я нашел аналогичный вопрос в переполнении стека, но никто не ответил на него.
Изменить
Before my bar look like: -- Icon Title MenuItem1 MenuItem2--
After my bar look like: -- MenuItem1 MenuItem2--
I want my bar look like: -- MenuItem1 MenuItem2
Ответы
Ответ 1
Ваши "пункты меню" никогда не будут выровнены влево. Они будут выровнены вправо. Левый - для вашего названия и значка (в настоящее время удалены) и навигации (вкладки, список и т.д.). Если у вас достаточно элементов панели действий, они перетекают влево, но они всегда начинаются справа. Это нельзя изменить с помощью Android SDK.
Ответ 2
Вы можете ссылаться на этот код, тогда вы можете получить решение... просто примените в соответствии с вашим требованием....
ActionBar actionBar = getActionBar();
actionBar.setDisplayShowTitleEnabled(false);
actionBar.setDisplayShowHomeEnabled(false);
actionBar.setDisplayShowCustomEnabled(true);
RelativeLayout relative = new RelativeLayout(getApplicationContext());
TextView tv1 = new TextView(this);
tv1.setText("Test1");
tv1.setTextColor(Color.GREEN);
tv1.setPadding(3,13,3, 12);
tv1.setId(1);
tv1.setOnClickListener(this);
TextView tv2 = new TextView(this);
tv2.setText("Test2");
tv2.setTextColor(Color.GREEN);
tv2.setPadding(3,13,3,12);
tv2.setId(2);
tv2.setOnClickListener(this);
TextView tv3 = new TextView(this);
tv3.setText("Test3");
tv3.setTextColor(Color.GREEN);
tv3.setPadding(3,13,3, 12);
tv3.setId(3);
tv3.setOnClickListener(this);
TextView tv4 = new TextView(this);
tv4.setText("Test3");
tv4.setTextColor(Color.GREEN);
tv4.setPadding(3,13,3, 12);
tv4.setId(4);
tv4.setOnClickListener(this);
LinearLayout ll = new LinearLayout(this);
ll.addView(tv1);
ll.addView(tv2);
ll.addView(tv3);
ll.addView(tv4);
relative.addView(ll);
actionBar.setCustomView(relative);
Ответ 3
getSupportActionBar().setIcon(android.R.color.transparent);
Ответ 4
Вы можете сделать это, используя контекстное меню над панелью действий. Проверьте демоверсии Sherlock ABS, есть Activity: ActionModes, он показывает очень простой пример, который может вам пригодиться.