Aviary SDK for Image Editing issue with setNavigationIcon of toolbar
Aviary SDK for Image Editing issue with setNavigationIcon of toolbar
Toolbar toolbar = (Toolbar) getView().findViewById((R.id.app_bar));
((BaseActivity) getActivity()).setSupportActionBar(toolbar);
((BaseActivity) getActivity()).getSupportActionBar().setDisplayShowTitleEnabled(false);
toolbar.setNavigationIcon(R.drawable.ic_menu);
toolbar.setNavigationOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
((MainActivity) getActivity()).openDrawer();
}
});
这是我的代码段。添加 Aviary SDK 后,在 'toolbar.setNavigationIcon(...)' 上设置的图像无法正常工作并且那里看不到任何图标。我的抽屉sliding/working很顺利。我想使用这个 SDK 并且也想要导航图标。如何做到这一点?
我认为您在 ActionBarDrawerToggle
之后使用了 setNavigationIcon()
方法,如下所示:
ActionBarDrawerToggle actionBarDrawerToggle = new ActionBarDrawerToggle(getActivity(), drawerLayout, toolbar, R.string.open, R.string.close);
actionBarDrawerToggle.syncState();
toolbar.setNavigationIcon(getResources().getDrawable(your_drawable_icon));
如果你的导航图标是返回图标,那么你可以从app:navigationIcon="?attr/homeAsUpIndicator"
获取。您的 toolbar
结构如下:
<android.support.v7.widget.Toolbar
android:id="@+id/toolbarId"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
app:navigationIcon="?attr/homeAsUpIndicator"/>
Toolbar toolbar = (Toolbar) getView().findViewById((R.id.app_bar));
toolbar.setNavigationIcon(R.drawable.ic_menu);
((BaseActivity) getActivity()).setSupportActionBar(toolbar);
((BaseActivity) getActivity()).getSupportActionBar().setDisplayShowTitleEnabled(false);
toolbar.setNavigationOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
((MainActivity) getActivity()).openDrawer();
}
});
只需更改顺序即可解决我的问题。
参考:
先尝试在工具栏上设置导航图标,然后再将工具栏设置为 setSupportActionBar
。
或者您可以尝试在 supportActionBar
中设置 setHomeAsUpIndicator
。
Toolbar toolbar = (Toolbar) getView().findViewById((R.id.app_bar));
((BaseActivity) getActivity()).setSupportActionBar(toolbar);
((BaseActivity) getActivity()).getSupportActionBar().setDisplayShowTitleEnabled(false);
toolbar.setNavigationIcon(R.drawable.ic_menu);
toolbar.setNavigationOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
((MainActivity) getActivity()).openDrawer();
}
});
这是我的代码段。添加 Aviary SDK 后,在 'toolbar.setNavigationIcon(...)' 上设置的图像无法正常工作并且那里看不到任何图标。我的抽屉sliding/working很顺利。我想使用这个 SDK 并且也想要导航图标。如何做到这一点?
我认为您在 ActionBarDrawerToggle
之后使用了 setNavigationIcon()
方法,如下所示:
ActionBarDrawerToggle actionBarDrawerToggle = new ActionBarDrawerToggle(getActivity(), drawerLayout, toolbar, R.string.open, R.string.close);
actionBarDrawerToggle.syncState();
toolbar.setNavigationIcon(getResources().getDrawable(your_drawable_icon));
如果你的导航图标是返回图标,那么你可以从app:navigationIcon="?attr/homeAsUpIndicator"
获取。您的 toolbar
结构如下:
<android.support.v7.widget.Toolbar
android:id="@+id/toolbarId"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
app:navigationIcon="?attr/homeAsUpIndicator"/>
Toolbar toolbar = (Toolbar) getView().findViewById((R.id.app_bar));
toolbar.setNavigationIcon(R.drawable.ic_menu);
((BaseActivity) getActivity()).setSupportActionBar(toolbar);
((BaseActivity) getActivity()).getSupportActionBar().setDisplayShowTitleEnabled(false);
toolbar.setNavigationOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
((MainActivity) getActivity()).openDrawer();
}
});
只需更改顺序即可解决我的问题。
参考:
先尝试在工具栏上设置导航图标,然后再将工具栏设置为 setSupportActionBar
。
或者您可以尝试在 supportActionBar
中设置 setHomeAsUpIndicator
。