0

アプリにスライド メニューを実装しました。ソース: https://github.com/johnkil/SideNavigation

正常に機能しますが、メニューの項目をクリックすると、何らかの理由でクリックが機能しません。onClick リスナーなどを追加しました。

コードスニペット:

public boolean onOptionsItemSelected(MenuItem item) {
        switch (item.getItemId()) {
        case android.R.id.home:
            sideNavigationView.toggleMenu();
            Toast.makeText(getApplicationContext(),( R.string.title1),
                    Toast.LENGTH_LONG).show();
            break;
        default:
            return super.onOptionsItemSelected(item);
        }
        return true;
    }

@Override
public void onSideNavigationItemClick(int itemId) {
    switch (itemId) {
    case R.id.side_navigation_menu_item1:
        Toast.makeText(getApplicationContext(),( R.string.title1),
                Toast.LENGTH_LONG).show();
        break;

    case R.id.side_navigation_menu_item2:
        Intent intent = new Intent(this, DiffAdapter.class);
        this.startActivity(intent);
        break;

    case R.id.side_navigation_menu_item3:
        invokeActivity(getString(R.string.title3), R.drawable.ic_action_storage);
        break;

    case R.id.side_navigation_menu_item4:
        invokeActivity(getString(R.string.title4), R.drawable.ic_action_settings);
        break;

    case R.id.side_navigation_menu_item5:
        invokeActivity(getString(R.string.title5), R.drawable.ic_launcher);
        break;

    default:
        return;
    }
    finish();
}

どんな助けでもいいでしょう。アイテムをクリックしても何もしません。

ありがとう

4

1 に答える 1

0

いくつかの文字列を実装するのを忘れていたため、バグが発生しました。追加することでこれを解決しました:

icon = (ImageView) findViewById(android.R.id.icon);
        sideNavigationView = (SideNavigationView) findViewById(R.id.side_navigation_view);
        sideNavigationView.setMenuItems(R.menu.ribbon_menu);
        sideNavigationView.setMenuClickCallback(this);

        if (getIntent().hasExtra(EXTRA_TITLE)) {
            String title = getIntent().getStringExtra(EXTRA_TITLE);
            int resId = getIntent().getIntExtra(EXTRA_RESOURCE_ID, 0);
            setTitle(title);
            icon.setImageResource(resId);
        }

私のコードに: onCreate ()

于 2012-11-19T09:51:44.370 に答える