Проблема в реализации ящиков в Android - PullRequest
0 голосов
/ 18 мая 2019

Пожалуйста, посмотрите мою проблему и посмотрите, что-то не так в моем коде Java для активности.Я не могу понять ошибки:

Я добавил два ящика - ящик навигации слева и ящик просмотра списка справа.Мои выдвижные ящики работают нормально, но моя активность не реагирует ни на какие щелчки.Обратите внимание, что я только что добавил ящики, не обрабатывая никаких кликов (я собираюсь сделать это позже, когда решу эту проблему!)

Я думаю, что проблема, скорее всего, связана с моим 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();
        }

    }

Я не знаю, нужно ли мне переопределять некоторые другие методы, чтобы все работало.В таком случае, дайте мне знать .. Заранее спасибо!

...