我正在使用由jfeinstein10创建的令人惊叹的库SlidingMenu。所以,一切都进行得非常顺利,但有一件事情。
我能够在事件处理程序中使用
我尝试了以下代码:
我正在考虑执行
编辑:在onCreate中发布。
我能够在事件处理程序中使用
toggle()
方法打开主菜单。但是我还希望在某些事件(如按钮单击)中打开辅助菜单。我尝试了以下代码:
SlidingMenu right = getSlidingmenu();
right.setSecondaryMenu(rightMenuView)
我正在考虑执行
right.toggle();
,但是上面的第二个语句会抛出NullPointerException异常。编辑:在onCreate中发布。
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
inflater = (LayoutInflater) this.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
leftMenuView = inflater.inflate(R.layout.left_menu, null, false);
rightMenuView = inflater.inflate(R.layout.right_menu, null, false);
customActionBarView = inflater.inflate(R.layout.custom_actionbar,null);
findAllViews();
setFontAwesome();
ab = getSupportActionBar();
ab.setDisplayShowCustomEnabled(true);
ab.setDisplayHomeAsUpEnabled(false);
ab.setDisplayShowHomeEnabled(false);
ab.setDisplayUseLogoEnabled(false);
ab.setCustomView(R.layout.custom_actionbar);
ivHome = (ImageView) findViewById(R.id.ab_home);
ivHome.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Log.d("TAG", "Tag");
toggle();
}
});
leftSlidingMenu = getSlidingMenu();
leftSlidingMenu.setMode(SlidingMenu.LEFT_RIGHT);
setBehindContentView(leftMenuView);
leftSlidingMenu.setTouchModeAbove(SlidingMenu.TOUCHMODE_FULLSCREEN);
leftSlidingMenu.setBehindOffset(100);
leftSlidingMenu.setFadeDegree(0.35f);
rightSlidingMenu = getSlidingMenu();
rightSlidingMenu.setSecondaryMenu(rightMenuView); //NPE Here
rightSlidingMenu.toggle();
}
有没有想法如何在事件上打开二级菜单。谢谢。