En los artículos anteriores hemos visto de que trata y para que es una intención explícita, aquí en este artículo vamos a examinar la intención implícita.
Las intención implícita: La intención implícita no especifica directamente los componentes de Android que deberían ser llamados. Lo que hace es especificar la acción que debe utilizarse, para realizar esta acción usaremos el URI.
Algunas cosas para las que sirven las intenciones implícitas:
- Llamar a un número.
- Navegar por la web con una URL dada.
- Enviar un email dado.
- Publicar o editar, publicaciones hechas por facebook, Gmail. WhatsApp, Twitter, etc.
- y muchas cosas mas.
Apliquemos una intención implícita para navegar hacia una pagina web:
En el archivo xml layout:
Se creara un botón, para después programarlo para que al presionar nos abra el navegador y nos lleve a la pagina indicada
El código en el archivo activity_main.xml
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" tools:context=".MainActivity"> <Button android:id="@+id/boton_navegacion" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center" android:layout_marginTop="30dp" android:text="Navegar" /> </LinearLayout> |
En el archivo .java "Java"
El código en el archivo MainActivity
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 | import android.content.Intent; import android.net.Uri; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.widget.Button; public class MainActivity extends AppCompatActivity implements View.OnClickListener { private Button btn; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); btn=(Button)findViewById(R.id.boton_navegacion); btn.setOnClickListener(this); } @Override public void onClick(View v) { //El brindamos el dato necesario a Uri Uri uriUrl = Uri.parse("http://www.codigojavalibre.com/"); //Especificamos la accion a realizar con el ACTION_VIEW //para que elija lo mas razonable Intent intent = new Intent(Intent.ACTION_VIEW, uriUrl); startActivity(intent); } } |
Y eso seria todo la aplicación debería funcionar correctamente.
2 comentarios
Write comentariosDisculpa. Tengo una pregunta. Quiero hacer algo parecido. Pero el botón tiene que abrir la web en un visor web que se encuentra en otra activity. Cómo podría hacer para que al presionar el botón en activity main, mande la URL al webview de la activity 2¿
ReplyComo duplicar el código para tener varios botones en el mismo screen...
Reply