2013-11-20 1 views
0

У меня есть проект с ActionBar, где я динамически меняю субтитры. Но теперь я должен расширять совместимость приложений, поэтому я добавил поддержку v7 для поддержки ActionBar.Настройка субтитров на ActionBar compat

Для этого я сделал:

  • android-support-v7-appcompat Импорт и добавить в библиотеку, чтобы мой проект

  • Установить Aplication тему как: Theme.AppCompat

  • Расширение деятельности в ActionBarActivity

Но все-таки есть некоторые методы, которые я использую, чтобы установить подзаголовок, который говорит мне, что они требуют уровень API 11, и мой текущий МИН 7.

Тезисы методы:

private final void setStatus(CharSequence subTitle) { 
    final ActionBar actionBar = getActionBar(); //getActionBar() throws it 
    actionBar.setSubtitle(subTitle); //setSubtitle() throws it 
+0

пожалуйста по крайней мере ** ** некоторые исследования, прежде чем отправлять, это все по документации [здесь] (http://developer.android.com/reference/android/support/ v7/app/ActionBarActivity.html), [здесь] (http://developer.android.com/guide/topics/ui/actionbar.html) или [здесь] (http://android-developers.blogspot.de/ 2013/08/actionbarcompat-и-IO-2013-приложение-source.html). – avalancha

ответ

4

Вы все еще используют методы, которые не совместимы с более старыми версиями Android. Попробуйте использовать getSupportActionBar вместо getActionBar.

Вы должны, конечно, проверить, что вы импортируете правильную версию ActionBar, и вы получите доступ к этому методу в соответствии с this.

удачи;)

+0

Импортировался неверный вариант Actionbar – masmic

2

Вы не используя Actionbar из SupportLib на данный момент.

Изменить getActionBar()getSupportActionBar().

Еще один момент, не забудьте установить правильные параметры отображения на вашем Actionbar так:

getSupportActionBar().setDisplayOptions(ActionBar.DISPLAY_SHOW_TITLE); 
+0

Где я должен определить 'getSupportActionBar(). SetDisplayOptions (ActionBar.DISPLAY_SHOW_TITLE);'? Внутри функции, непосредственно перед getSupportActionBar()? – masmic

+1

Предпочтительно, в вашей функции onCreate – DroidBender

 Смежные вопросы

  • Нет связанных вопросов^_^