<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Boton - Tutorial Android, aprende a programar en Android.</title>
	<atom:link href="http://www.tutorialandroid.com/tag/boton/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.tutorialandroid.com</link>
	<description>Tutoriales detallados para programar, desde el principio, aplicaciones para el sistema Android</description>
	<lastBuildDate>Mon, 22 Aug 2011 15:30:34 +0000</lastBuildDate>
	<language>es</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.1.9</generator>
	<item>
		<title>Como programar un Context Menu</title>
		<link>http://www.tutorialandroid.com/basico/como-programar-un-context-menu/</link>
					<comments>http://www.tutorialandroid.com/basico/como-programar-un-context-menu/#comments</comments>
		
		<dc:creator><![CDATA[Gonzalo de Córdoba]]></dc:creator>
		<pubDate>Mon, 22 Aug 2011 15:18:33 +0000</pubDate>
				<category><![CDATA[Básico]]></category>
		<category><![CDATA[Boton]]></category>
		<category><![CDATA[Context Menu]]></category>
		<guid isPermaLink="false">http://www.tutorialandroid.com/?p=173</guid>

					<description><![CDATA[<p>Objetivo: Vamos a aprender a crear nuestro primer Context Menu a partir de pulsar un botón. Se van a ver en concreto dos formas de aparecer el Context Menu: &#8211; Al dejar pulsado un botón (es como normalmente aparece un &#8230; <a href="http://www.tutorialandroid.com/basico/como-programar-un-context-menu/">Sigue leyendo <span class="meta-nav">&#8594;</span></a></p>
<p>The post <a href="http://www.tutorialandroid.com/basico/como-programar-un-context-menu/">Como programar un Context Menu</a> first appeared on <a href="http://www.tutorialandroid.com">Tutorial Android, aprende a programar en Android.</a>.</p>]]></description>
										<content:encoded><![CDATA[<h2><span class="Apple-style-span" style="font-size: 13px; font-weight: normal;"><span style="text-decoration: underline;">Objetivo:</span></span></h2>
<div>
<p style="text-align: justify; padding-left: 30px;">Vamos a aprender a crear nuestro primer Context Menu a partir de pulsar un botón.</p>
<p style="text-align: justify; padding-left: 30px;">Se van a ver en concreto<strong> dos formas de aparecer el Context Menu</strong>:</p>
<p style="text-align: justify; padding-left: 30px;">&#8211; <strong>Al</strong> <strong>dejar pulsado un botón</strong> (es como normalmente aparece un Context Menu)</p>
<p style="text-align: justify; padding-left: 30px;">&#8211; <strong>Al</strong> <strong>pulsar normal el botón</strong> (modificamos el comportamiento para que en este caso también aparezca)</p>
<p>
<a href="http://www.tutorialandroid.com/wp-content/uploads/2011/08/AprendiendoContextMenu.jpg"><img decoding="async" loading="lazy" src="http://www.tutorialandroid.com/wp-content/uploads/2011/08/AprendiendoContextMenu-199x300.jpg" alt="Ejemplo Context Menu Android" title="AprendiendoContextMenu" width="199" height="300" class="alignleft size-medium wp-image-220" srcset="http://www.tutorialandroid.com/wp-content/uploads/2011/08/AprendiendoContextMenu-199x300.jpg 199w, http://www.tutorialandroid.com/wp-content/uploads/2011/08/AprendiendoContextMenu.jpg 329w" sizes="(max-width: 199px) 100vw, 199px" /></a></p>
<p><a href="http://www.tutorialandroid.com/wp-content/uploads/2011/08/AprendiendoContextMenu2.jpg"><img decoding="async" loading="lazy" src="http://www.tutorialandroid.com/wp-content/uploads/2011/08/AprendiendoContextMenu2-199x300.jpg" alt="Aprendiendo Context Menu Android 2" title="AprendiendoContextMenu2" width="199" height="300" class="alignright size-medium wp-image-222" srcset="http://www.tutorialandroid.com/wp-content/uploads/2011/08/AprendiendoContextMenu2-199x300.jpg 199w, http://www.tutorialandroid.com/wp-content/uploads/2011/08/AprendiendoContextMenu2.jpg 327w" sizes="(max-width: 199px) 100vw, 199px" /></a>
</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p><span style="text-decoration: underline;">Código fuente java (Principal.java):</span></p>
<p>[sourcecode language=&#8221;java&#8221;]<br />
import android.app.Activity;<br />
import android.os.Bundle;<br />
import android.view.ContextMenu;<br />
import android.view.MenuItem;<br />
import android.view.View;<br />
import android.view.ContextMenu.ContextMenuInfo;<br />
import android.widget.Button;<br />
import android.widget.Toast;</p>
<p>public class Principal extends Activity {<br />
   /** Called when the activity is first created. */<br />
   @Override<br />
   public void onCreate(Bundle savedInstanceState) {<br />
      super.onCreate(savedInstanceState);<br />
      setContentView(R.layout.main);</p>
<p>      //al Boton_01 le damos el comportamiento normal con<br />
      //registerForContextMenu, y al pulsar largamente sale el ContextMenu<br />
      Button btn = (Button) findViewById(R.id.button_example);<br />
      registerForContextMenu(btn);</p>
<p>      //el boton 2, es un boton especial. A diferencia del boton 1,<br />
      //haremos que el ContextMenu aparezca al pulsar normalmente el botón<br />
      Button btn2 = (Button) findViewById(R.id.button_example2);</p>
<p>   }</p>
<p>   /**<br />
    * Se crea el Context Menu, añadiendo las opciones deseadas<br />
    * @param ContextMenu<br />
    * @param View<br />
    * @param ContextMenuInfo<br />
    */<br />
   @Override<br />
   public void onCreateContextMenu(ContextMenu menu, View v, ContextMenuInfo menuInfo) {<br />
      super.onCreateContextMenu(menu, v, menuInfo);<br />
      menu.setHeaderTitle(&quot;Context Menu&quot;);<br />
      menu.add(0, v.getId(), 0, &quot;Action 1&quot;);<br />
      menu.add(0, v.getId(), 0, &quot;Action 2&quot;);<br />
   }</p>
<p>   /**<br />
    * Se definen las funciones que se llamarán al pulsar las<br />
    * opciones del Context Menu<br />
    * @param MenuItem<br />
    */<br />
   @Override<br />
   public boolean onContextItemSelected(MenuItem item) {<br />
      if (item.getTitle() == &quot;Action 1&quot;) {<br />
         function1(item.getItemId());<br />
      }else if (item.getTitle() == &quot;Action 2&quot;) {<br />
         //function2(item.getItemId());<br />
	 return true; //pulsando sobre ella salgo<br />
      }else{<br />
	 return false;<br />
      }<br />
      return true;<br />
   }</p>
<p>/**<br />
    * Se definen las acciones que se realizan al pulsar la Accion1 en<br />
    * del Context Menu.<br />
    * En este caso, como ejemplo, damos un mensaje en pantalla<br />
    * @param int<br />
    */<br />
public void function1(int id) {<br />
      Toast.makeText(this, &quot;Accion 1 llamada&quot;, Toast.LENGTH_SHORT).show();<br />
   }</p>
<p>/**<br />
    * Se definen las acciones que se realizan al pulsar la Accion2 en<br />
    * del Context Menu.<br />
    * En este caso, como ejemplo, damos un mensaje en pantalla<br />
    * @param int<br />
    */<br />
public void function2(int id) {<br />
      Toast.makeText(this, &quot;Accion 2 llamada&quot;, Toast.LENGTH_SHORT).show();<br />
   }</p>
<p>/**<br />
    * Funcion auxiliar que se utiliza para el boton2 solamente.<br />
    * Con ella conseguimos que al pulsar el boton2 de forma normal,<br />
    * aparezca el Context Menu.<br />
    * @param View<br />
    */<br />
   public void funcionIniciarContextMenuParaBoton2(View v) {<br />
      registerForContextMenu(v);<br />
      openContextMenu(v);<br />
   }</p>
<p>}<br />
[/sourcecode]</p>
<p>&nbsp;</p>
<p><span style="text-decoration: underline;">Código fuente XML (main.xml):</span></p>
<p>[sourcecode language=&#8221;xml&#8221;]<br />
&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt;<br />
&lt;LinearLayout xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;<br />
 android:orientation=&quot;vertical&quot; android:layout_width=&quot;fill_parent&quot;<br />
 android:layout_height=&quot;fill_parent&quot;&gt;</p>
<p>    &lt;!&#8211; Texto Inicial para la aplicación &#8211;&gt;<br />
    &lt;TextView android:layout_width=&quot;fill_parent&quot;<br />
    android:layout_height=&quot;wrap_content&quot; android:text=&quot;Aprendiendo Context Menu&quot; /&gt;</p>
<p>    &lt;!&#8211; Creacion boton1. Dejándolo pulsado aparecerá el Context Menu, pero eso<br />
    se define el en .java, no aquí &#8211;&gt;<br />
    &lt;Button android:text=&quot;Button01&quot; android:id=&quot;@+id/button_example&quot;<br />
     android:layout_width=&quot;wrap_content&quot; android:layout_height=&quot;wrap_content&quot;&gt;&lt;/Button&gt;</p>
<p>    &lt;!&#8211; Creacion boton2. Haciendo clic en él llamamos a la funcion que<br />
     inicializa el Context Menu manualmente &#8211;&gt;<br />
    &lt;Button android:text=&quot;Button02&quot; android:id=&quot;@+id/button_example2&quot;<br />
     android:onClick=&quot;funcionIniciarContextMenuParaBoton2&quot;<br />
     android:layout_width=&quot;wrap_content&quot; android:layout_height=&quot;wrap_content&quot;&gt;&lt;/Button&gt;</p>
<p>&lt;/LinearLayout&gt;<br />
[/sourcecode]</p>
<p>&nbsp;</p>
<p><strong>Descárgate el código <a href="http://www.tutorialandroid.com/wp-content/codigosDescargables/Como_programar_un_Context_Menu.zip">aquí</a> </strong></p>
</div><p>The post <a href="http://www.tutorialandroid.com/basico/como-programar-un-context-menu/">Como programar un Context Menu</a> first appeared on <a href="http://www.tutorialandroid.com">Tutorial Android, aprende a programar en Android.</a>.</p>]]></content:encoded>
					
					<wfw:commentRss>http://www.tutorialandroid.com/basico/como-programar-un-context-menu/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
			</item>
	</channel>
</rss>
