我想更改导航抽屉图标。但在我更改了图标后,应用程序崩溃了。错误代码显示了布尔值,我遗憾地不明白。我找不到我的失败。我是以错误的方式实施的吗? 对不起,但我是Android Studio上的新手,这个问题可能有点不必要了。但尝试了很多来解决问题。但是,我还没找到解决方案。
那是MainClass。我在OnCreate方法之外生成了一个变量。
public class MainActivity extends AppCompatActivity {
private DrawerLayout mDrawerLayout;
ExpandableListAdapter mMenuAdapter;
ExpandableListView expandableList;
List<ExpandedMenuModel> listDataHeader;
HashMap<ExpandedMenuModel, List<String>> listDataChild;
ActionBarDrawerToggle mDrawerToggle;
Drawable drawable;
WebView webView;
Toolbar toolbar;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_navigation_view);
mDrawerToggle.setDrawerIndicatorEnabled(false);
drawable = ResourcesCompat.getDrawable(getResources(), R.drawable.ic_menu_gallery, getTheme());
mDrawerToggle.setHomeAsUpIndicator(drawable);
mDrawerToggle.setToolbarNavigationClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (mDrawerLayout.isDrawerVisible(GravityCompat.START)) {
mDrawerLayout.closeDrawer(GravityCompat.START);
} else {
mDrawerLayout.openDrawer(GravityCompat.START);
}
}
});
........
答案 0 :(得分:1)
mDrawerToggle = ActionBarDrawerToggle(this, mDrawerLayout, toolbar, R.string.drawer_open, R.string.drawer_close);
mDrawerToggle.setDrawerIndicatorEnabled(false);
mDrawerToggle.setToolbarNavigationClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (mDrawerLayout.isDrawerVisible(GravityCompat.START)) {
mDrawerLayout.closeDrawer(GravityCompat.START);
} else {
mDrawerLayout.openDrawer(GravityCompat.START);
}
}
});
mDrawerToggle.setHomeAsUpIndicator(R.drawable.ic_menu_gallery);
有关详情,请查看此link
答案 1 :(得分:0)
您尚未将值指定为:
mDrawerToggle
在此之前致电setDrawerIndicatorEnabled
:
mDrawerToggle.setDrawerIndicatorEnabled(false);