1. mofl, 21.05.2011 #1
    mofl

    mofl Threadstarter Neuer Benutzer

    Hey,

    ich habe folgendes Problem, unzwar habe ein LinearLayout mit mehreren Buttons.

    Wenn ich nun das ContextMenuAufrufe (bei jedem Button möglich) möchte ich in der OnContextItemSelected() diesen Button haben.

    Wie stelle ich das an, ist das überhaupt möglich??
     
  2. PeaceI, 23.05.2011 #2
    PeaceI

    PeaceI Android-Hilfe.de Mitglied

    Möglich ist so ziemlich alles... fragt sich nur wie ;)

    in der Methode "onCreateContextMenu" wird die View für den das Menu erstellt wird mit übergeben, also deine jeweiligen Buttons. Weiterhin kannst du an den MenuItems selbst wiederrum "onMenuItemClickListener" registrieren, wenn du dir solche Listener schreibst, die sich deine View merken hasst du was du brauchst... so hab ichs z.B. gelöst:
    Code:
        private class OnCreateCMListener implements View.OnCreateContextMenuListener {
        	
        	public void onCreateContextMenu(ContextMenu menu, View v,
    	  ContextMenuInfo menuInfo) {
    	        MenuItem mItem = menu.add("MenuItem-Beschriftung");
    		mItem.setOnMenuItemClickListener(new OnMIClickListener(v));
             }
        }	
        	
        private class OnMIClickListener implements MenuItem.OnMenuItemClickListener {
        	private boolean isShareListener;
        	private View view;
        	
        	public OnMIClickListener(View v) {
        		super();
        		this.view = v;
        	}
    	public boolean onMenuItemClick(MenuItem item) {
    
                    Button b = (Button) this.v;
    		// do something with your button
    
    		return true;
    	}	
        }
    
    achja und natürlich den OnCreateCMListener an den Buttons registrieren:
    Code:
    OnCreateContextListener cmListener = new OnCreateCMListener();
    yourButton.setOnCreateContextMenuListener(cmListener);
    yourNextButton.setOnCreateContextMenuListener(cmListener);
    
    das Ganze jetzt in der Annahme, dass du eigentlich auf die Clicks reagieren willst und nicht nur aufs Selektieren,
    die onContextMenuItemSelected-Methode brauchst du dann nicht mehr
     
  3. mofl, 23.05.2011 #3
    mofl

    mofl Threadstarter Neuer Benutzer

    Danke hat mir soweit geholfen, aber ein Frage hab ich noch,
    wie kann man ein menu aus den resourcen laden und dann den items einen listener anhängen?

    Code:
    public void onCreateContextMenu(ContextMenu menu, View v, ContextMenuInfo menuInfo) {
         getMenuInflater().inflate(R.menu.menu, menu);
     }
    
     
Die Seite wird geladen...
Similar Threads Forum Datum
S-View Fenster deaktivieren Samsung Galaxy A5 (A500F) Forum 07.03.2017
Suche: Photo viewer mit flexiblem Grid (wie Google Fotos) Foto und Multimedia 14.03.2017
[ERLEDIGT] View zum selektieren der Wochentage Android App Entwicklung 19.03.2017
[RÜCKMELDUNG FEHLT] Text und Bilder in View einbinden Android App Entwicklung 26.03.2017
Daydream View Apps ZTE Axon 7 Forum 02.04.2017
Review: Huawei P10 Plus Flip View Cover Zubehör für Huawei P10 Plus 13.04.2017
Windows-Viewer für Android-Panoramafotos? Google Fotos 26.04.2017
G900F Sreen Mirroring bzw. mit Smartview App zu LED-TV streamen Samsung Galaxy S5 (G900F) Forum 29.04.2017
Probleme mit Smart View und chromecast spiegeln TAB S3 Samsung Galaxy Tab S3 (T820/T825) Forum 05.05.2017
Anzeige (DPI) kleiner als "Settings / Display / View Mode / Small“? Root / Custom-ROMs / Modding für Huawei Mate 9 07.05.2017