Я отвечаю сам. Согласно сообщению на click home icon with espresso, невозможно указать Id
для кнопки «Главная» в ActionBar, по крайней мере, с версией 7 библиотеки поддержки, поэтому мы должны использовать «Навигация вверх». Но почему?
Это причина, благодаря ошибке следа Эспрессо:
--------> ActionMenuView
{
id=-1, visibility=VISIBLE, width=144, height=168, has-focus=false,
has-focusable=true, has-window-focus=true, is-clickable=false,
is-enabled=true, is-focused=false, is-focusable=false,
is-layout-requested=false, is-selected=false, root-is-layout-requested=false,
has-input-connection=false, x=936.0, y=0.0, child-count=1
}
|
--------> ActionMenuItemView
{
id=2131296554, res-name=general, desc=, visibility=VISIBLE,
width=144, height=144, has-focus=false, has-focusable=true,
has-window-focus=true, is-clickable=true, is-enabled=true,
is-focused=false, is-focusable=true, is-layout-requested=false,
is-selected=false, root-is-layout-requested=false,
has-input-connection=false, x=0.0, y=12.0, text=, input-type=0, ime-target=false
}
|
--------> ImageButton
{
id=-1, desc=Navigate up, visibility=VISIBLE, width=168, height=168,
has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=true,
is-enabled=true, is-focused=false, is-focusable=true, is-layout-requested=false,
is-selected=false, root-is-layout-requested=false, has-input-connection=false, x=0.0, y=0.0
}
|
Хм, интересно. Я использую тот же код для выполнения действия на домашней кнопке: onView (withId (android.R.id.home)).выполнить (нажмите()); К сожалению, мы по-прежнему используем appcompat-v7: 20.0. +. Может быть, это как-то связано с новой панелью инструментов для Android? Какой идентификатор вы извлечете, если вы проверите представление в Android Monitor? – Christopher
Очевидно, что нет нового идентификатора с новой панелью инструментов Android, вместо того, чтобы использовать «Навигация вверх» :( –