请查看我的问题,并查看我的活动Java代码中是否可能有问题。我无法找出错误:
我添加了两个抽屉-左侧的导航抽屉和右侧的listview抽屉。我的抽屉工作正常,但是我的活动没有响应任何点击。请注意,我只是添加了抽屉,没有处理任何点击(我打算稍后再解决此问题!)
我认为问题可能出在我的活动Java代码上。 我的活动中有关于我的抽屉的这段代码。如果需要,我可以提供布局文件。
public class SecondActivity extends AppCompatActivity implements NavigationView.OnNavigationItemSelectedListener{
@Override
public boolean onNavigationItemSelected(MenuItem item) {
int id = item.getItemId();
// Handle the actions accordingly for all menus
if (id == R.id.nav_camera) {
} else if (id == R.id.nav_gallery) {
} else if (id == R.id.nav_slideshow) {
} else if (id == R.id.nav_manage) {
} else if (id == R.id.nav_share) {
} else if (id == R.id.nav_send) {
}
DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
drawer.closeDrawer(GravityCompat.START);
return true;
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.nav_layout);
Toolbar toolbar=(Toolbar)findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
DrawerLayout drawer=(DrawerLayout)findViewById(R.id.drawer_layout);
DrawerLayout drawer2=(DrawerLayout)findViewById(R.id.drawer_layout2);
ActionBarDrawerToggle toggle=new ActionBarDrawerToggle(this,drawer,toolbar,R.string.OPEN_DRAWER,R.string.CLOSE_DRAWER);
ActionBarDrawerToggle toggle2=new ActionBarDrawerToggle(this,drawer2,toolbar,R.string.OPEN_DRAWER2,R.string.CLOSE_DRAWER2);
drawer.addDrawerListener(toggle);
drawer2.addDrawerListener(toggle2);
toggle.syncState();
toggle2.syncState();
NavigationView navigationView=(NavigationView)findViewById(R.id.nav_view);
navigationView.setNavigationItemSelectedListener(this);
mDrawerList=(ListView)findViewById(R.id.left_drawer);//this is actually right drawer
CustomAdapter adapter=new CustomAdapter(this,R.layout.listview_item,mQuestionBank);
mDrawerList.setAdapter(adapter);
}
@Override
public void onBackPressed()
{
DrawerLayout drawer=(DrawerLayout)findViewById(R.id.drawer_layout);
DrawerLayout drawer2=(DrawerLayout)findViewById(R.id.drawer_layout2);
if(drawer.isDrawerOpen(GravityCompat.START))
{
drawer.closeDrawer(GravityCompat.START);
}
else{
super.onBackPressed();
}
if(drawer2.isDrawerOpen(GravityCompat.END))
{
drawer2.closeDrawer(GravityCompat.END);
}
else{
super.onBackPressed();
}
}
我不知道我是否必须重写其他方法才能正常工作。在这种情况下,请告诉我。.预先感谢!