Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 9157033
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: June 17, 20262026-06-17T12:54:51+00:00 2026-06-17T12:54:51+00:00

From a lot of help here, I was able to use this code to

  • 0

From a lot of help here, I was able to use this code to inflate a context menu whenever an item is clicked. However, I cannot figure out how to inflate a individual, separate menus for each item. I want a different menu to pop up when a different item is clicked. Right now, no matter which item I click, the same menu pops up. How can I solve this? Here is the code I am using.

package com.carouseldemo.main;

import android.app.Activity;
import android.media.MediaPlayer;
import android.os.Bundle;
import android.view.ContextMenu;
import android.view.ContextMenu.ContextMenuInfo;
import android.view.MenuInflater;
import android.view.View;
import android.widget.TextView;
import android.widget.Toast;

import com.carouseldemo.controls.Carousel;
import com.carouseldemo.controls.CarouselAdapter;
import com.carouseldemo.controls.CarouselAdapter.OnItemClickListener;
import com.carouseldemo.controls.CarouselAdapter.OnItemSelectedListener;
import com.carouseldemo.controls.CarouselItem;

public class MainActivity extends Activity {



     @Override
      public void onCreateContextMenu (ContextMenu menu, View v, ContextMenuInfo menuInfo) {
        super.onCreateContextMenu(menu, v, menuInfo);
        MenuInflater inflater = getMenuInflater();
        inflater.inflate(R.menu.testmenu, menu);
      }

        /** Called when the activity is first created.
         * @return */
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    MediaPlayer mp = MediaPlayer.create(this, R.raw.radio);
    mp.start();
    Carousel carousel = (Carousel)findViewById(R.id.carousel);
    registerForContextMenu (carousel);
    carousel.setOnItemClickListener(new OnItemClickListener(){

                    public void onItemClick(CarouselAdapter<?> parent, View view,
                                    int position, long id) {       

                            openContextMenu (view);
                            Toast.makeText(MainActivity.this,
                                            String.format("%s has been clicked",
                                            ((CarouselItem)parent.getChildAt(position)).getName()),
                                            Toast.LENGTH_SHORT).show();                            
                    }

                    @Override
                    public void onCreateContextMenu(ContextMenu menu,
                            View v, ContextMenuInfo menuInfo) {
                        // TODO Auto-generated method stub

                    }

    });



    carousel.setOnItemSelectedListener(new OnItemSelectedListener(){

                    public void onItemSelected(CarouselAdapter<?> parent, View view,
                                    int position, long id) {

                    final TextView txt = (TextView)(findViewById(R.id.selected_item));

                            switch(position){
                            case 0:
                                    txt.setText("The cat (Felis catus), also known as the domestic cat or housecat to distinguish it from other felids and felines, is a small, usually furry, domesticated, carnivorous mammal that is valued by humans for its companionship and for its ability to hunt vermin and household pests. Cats have been associated with humans for at least 9,500 years, and are currently the most popular pet in the world. Owing to their close association with humans, cats are now found almost everywhere in the world.");
                                    break;
                            case 1:
                                    txt.setText("The hippopotamus (Hippopotamus amphibius), or hippo, from the ancient Greek for \"river horse\" (ἱπποπόταμος), is a large, mostly herbivorous mammal in sub-Saharan Africa, and one of only two extant species in the family Hippopotamidae (the other is the Pygmy Hippopotamus.) After the elephant, the hippopotamus is the third largest land mammal and the heaviest extant artiodactyl.");
                                    break;
                            case 2:
                                    txt.setText("A monkey is a primate, either an Old World monkey or a New World monkey. There are about 260 known living species of monkey. Many are arboreal, although there are species that live primarily on the ground, such as baboons. Monkeys are generally considered to be intelligent. Unlike apes, monkeys usually have tails. Tailless monkeys may be called \"apes\", incorrectly according to modern usage; thus the tailless Barbary macaque is called the \"Barbary ape\".");
                                    break;
                            case 3:
                                    txt.setText("A mouse (plural: mice) is a small mammal belonging to the order of rodents. The best known mouse species is the common house mouse (Mus musculus). It is also a popular pet. In some places, certain kinds of field mice are also common. This rodent is eaten by large birds such as hawks and eagles. They are known to invade homes for food and occasionally shelter.");
                                    break;
                            case 4:
                                    txt.setText("The giant panda, or panda (Ailuropoda melanoleuca, literally meaning \"black and white cat-foot\") is a bear native to central-western and south western China.[4] It is easily recognized by its large, distinctive black patches around the eyes, over the ears, and across its round body. Though it belongs to the order Carnivora, the panda's diet is 99% bamboo.");
                                    break;
                            case 5:
                                    txt.setText("Rabbits (or, colloquially, bunnies) are small mammals in the family Leporidae of the order Lagomorpha, found in several parts of the world. There are eight different genera in the family classified as rabbits, including the European rabbit (Oryctolagus cuniculus), cottontail rabbits (genus Sylvilagus; 13 species), and the Amami rabbit (Pentalagus furnessi, an endangered species on Amami ÅŒshima, Japan)");
                                    break;
                            }

                    }

                    public void onNothingSelected(CarouselAdapter<?> parent) {
                    }

    }
    );

}

}
  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-06-17T12:54:52+00:00Added an answer on June 17, 2026 at 12:54 pm

    This is simple in android. Only thing is you might have to add menu dynamically to the system instead of loading menu items using a xml file or load different xml menus based on the user’s selection.

    here is a sample application which shows how to do this,

    @Override
    public void onCreateContextMenu(ContextMenu menu, View v,
            ContextMenuInfo menuInfo) {
            if(flag)
            {
            menu.add("hi");
            menu.add("this");
            }
            else
            {
                menu.add("context");
                menu.add("menu");
            }
        super.onCreateContextMenu(menu, v, menuInfo);
    }
    

    The above method based on a flag value inflates the different set of menu items.

    Following is the onCreate() method which has a button and within that it registers for context menu every time it gets clicked.

        Button button=null;
        boolean flag=false;
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
    
        button=(Button)findViewById(R.id.button1);
        button.setOnClickListener(new OnClickListener() {
    
            @Override
            public void onClick(View v) {
                if(flag)
                {
                    flag=false;
                }
                else
                {
                    flag=true;
                }
                registerForContextMenu(v);
                openContextMenu(v);
            }
        });
        }
    

    And here is the output,

    When the flag is true,

    enter image description here

    And when the flag is false,

    enter image description here

    And I believe the key is to call the registerForContextMenu(v); when you need to load new menu items.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

After a lot of help from people on this website I have been able
Hey guys, I've had a lot of help from everyone here and i am
Following from my last question which @Jon Skeet gave me a lot of help
Based on a previous question and with a lot of help from Damir Sudarevic
A lot of time I have to code from home. Normally I just remote
my first question! I've been able to code up most of this RSS reader
I'm posting this for a friend. He is not able to access Stackoverflow from
I'm looking to go away from our current according style menu and use jquery
Here is another question I have about being able to calculate this scenario in
I feel really dumb for not being able to figure this out so here

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.