簡體   English   中英

打開菜單項上的第二個活動,單擊

[英]Open second activity on menu item click

我一直在尋找一種從菜單項單擊中打開輔助活動的方法。 經過多次嘗試在其他人的帖子中找到我的問題的答案之后,我決定提出一個問題。 以代碼片段的形式提供的幫助將非常感謝您迅速應用,謝謝:)

@Override
public boolean onNavigationItemSelected(MenuItem item) {
    // Handle navigation view item clicks here.
    int id = item.getItemId();

    if (id == R.id.nav_gallery) {
        MainFragment fragment = new MainFragment();
        android.support.v4.app.FragmentTransaction fragmentTransaction =
                getSupportFragmentManager().beginTransaction();
        fragmentTransaction.replace(R.id.fragment_container, fragment);
        fragmentTransaction.commit();

        //open gallery
        startActivity(new Intent(MainActivity.this, PhotoGallery.class));
    }

    else if (id == R.id.nav_share) {
        MainFragment fragment = new MainFragment();
        android.support.v4.app.FragmentTransaction fragmentTransaction =
                getSupportFragmentManager().beginTransaction();
        fragmentTransaction.replace(R.id.fragment_container,fragment);
        fragmentTransaction.commit();
    }
    else if (id == R.id.nav_msg)
    {
        MainFragment fragment = new MainFragment();
        android.support.v4.app.FragmentTransaction fragmentTransaction =
                getSupportFragmentManager().beginTransaction();
        fragmentTransaction.replace(R.id.fragment_container,fragment);
        fragmentTransaction.commit();
    }
    DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
    drawer.closeDrawer(GravityCompat.START);
    return true;
}
@Override
public boolean onNavigationItemSelected(MenuItem item) {
    // Handle navigation view item clicks here.
    int id = item.getItemId();

    if (id == R.id.nav_gallery) {
        //open gallery

        Intent galleryIntent = new Intent(YourCurrentActivity.this, PhotoActivity.class);
        //if you need to pass data: 
        Bundle mBundle = new Bundle();
        mBundle.putString("myKey", "opengalleryclicked");
        galleryIntent.putExtras(mBundle); 
        startActivity(galleryIntent);
    }

    DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
    drawer.closeDrawer(GravityCompat.START);
    return true;
}

可以通過以下方式在您的第二個活動中接收傳遞的數據:

String value = getIntent().getExtras().getString("myKey");

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM