Materialdrawer: setDisplayHomeAsUpEnabled (true) никуда не денется

Созданный на 28 февр. 2015  ·  5Комментарии  ·  Источник: mikepenz/MaterialDrawer

Я вызвал setDisplayHomeAsUpEnabled (true), и стрелка показывает, но никуда не уходит.

Как я могу это сделать

Благодарю.

question

Самый полезный комментарий

Для начала нужно инициализировать панель инструментов:

Панель инструментов панели инструментов = (Панель инструментов) findViewById (R.id.toolbar);

setSupportActionBar (панель инструментов);

затем вызовите кнопку возврата из ActionBar:

getSupportActionBar (). setDisplayHomeAsUpEnabled (истина);

getSupportActionBar (). setDisplayShowHomeEnabled (true);

@Override
public boolean onSupportNavigateUp () {
onBackPressed ();
вернуть истину;
}

Все 5 Комментарий

Я добился того же, добавив следующую строку в файл манифеста
android: name = "android.support.PARENT_ACTIVITY"
android: value = ". MainActivity" />

Пожалуйста, посоветуйте мне, есть ли другой способ сделать это.

@vishnudbimcs ты имеешь ввиду переключатель ящика? сама библиотека обеспечивает базовую функциональность переключения ящиков. вы также можете получить объект обратно из результата.

Эта библиотека обрабатывает MaterialDrawer и просто базовые вещи вокруг него. Поэтому для особых случаев с панелью инструментов или ActionBarToggler просто реализуйте ее, как если бы вы создавали обычное приложение. ;)

Привет
У меня есть действие A с ящиком, и внутри него я надуваю фрагмент A.
В ящике есть .withActionBarDrawerToggle (true), и я не установил getSupportActionBar (). SetDisplayHomeAsUpEnabled (true) для действия
Затем внутри Activity A y замените фрагмент A на фрагмент B, и я хочу показать «backbutton» вместо переключателя ящика после надувания фрагмента BI:

result.getActionBarDrawerToggle().setDrawerIndicatorEnabled(false);
 getSupportActionBar().setDisplayHomeAsUpEnabled(true);

И кнопка возврата отображается, однако, если я нажимаю на нее, она ничего не делает. Я также сделал переопределение активности OnbackPressed:

 <strong i="12">@Override</strong>
  public void onBackPressed() {
}

Но никогда не попадает.
Я также добавил onOptionsItemselected, но снова ничего не происходит.

Так что я протестировал еще несколько вещей.
1) Я снял ящик и просто использовал

getSupportActionBar().setDisplayHomeAsUpEnabled(true);

Результат: кнопка "Назад" на фрагментах A и B, и она работает.

2) Использование ящика, но НЕ изменение результата. GetActionBarDrawerToggle (). SetDrawerIndicatorEnabled (false);
при загрузке фрагмента B
Результат: значок Гамбургера на фрагментах A и B.

3) Установка getSupportActionBar (). SetDisplayHomeAsUpEnabled (true); при запуске Приложения,
и result.getActionBarDrawerToggle (). setDrawerIndicatorEnabled (false); при загрузке фрагмента B
Результат: гамбургер на фрагменте A, на фрагменте B ничего не видно.

Я не знаю, что здесь происходит ...

@gpulido, пожалуйста, прочтите следующее относительно этого поведения

https://github.com/mikepenz/MaterialDrawer/issues/65

Спасибо

Для начала нужно инициализировать панель инструментов:

Панель инструментов панели инструментов = (Панель инструментов) findViewById (R.id.toolbar);

setSupportActionBar (панель инструментов);

затем вызовите кнопку возврата из ActionBar:

getSupportActionBar (). setDisplayHomeAsUpEnabled (истина);

getSupportActionBar (). setDisplayShowHomeEnabled (true);

@Override
public boolean onSupportNavigateUp () {
onBackPressed ();
вернуть истину;
}

Была ли эта страница полезной?
0 / 5 - 0 рейтинги