Ciao a tutti cari amici di iProg oggi inizieremo a introdurre gli Intent. Un Intent è una descrizione astratta di una operazione, ovvero descrive ciò che l’applicazione “vorrebbe fare”.In pratica ci consente di trasmettere delle informazioni tra componenti e di farli comunicare l’uno con l’altro o con altre applicazioni. Credo che con un esempio pratico il tutto sarà molto più chiaro quindi creiamo un nuovo progetto e diamogli come nome: EsempioIntent una volta fatto ciò creiamo una nuova Activity facendo click col tasto destro sulla cartella main
Questa nuova Activity chiamiamola SecondaActivity
A questo punto inseriamo un pulsante all’interno del nostro Layout corrispondente all’ Activity principale:
<RelativeLayout 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:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" android:paddingBottom="@dimen/activity_vertical_margin" tools:context=".MyActivity"> <Button android:layout_width="match_parent" android:layout_height="wrap_content" android:text="Vai alla seconda Activity" android:id="@+id/button" android:layout_alignParentTop="true" /> </RelativeLayout>
Una volta fatto ciò rechiamoci presso il file java dell’Activity principale e implementiamo il tutto:
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_my); Button bottone =(Button)findViewById(R.id.button); bottone.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { //Dichiaro un Intent che ha come "intenzione" di aprire la seconda Activity Intent intent = new Intent(getApplicationContext(),SecondaActivity.class); //Avvia l'activity desiderata togliendo l'activity corrente dal primo piano startActivity(intent); } }); }
Come esercizio vi lascio il compito di creare un pulsante nella seconda Activity che ha il compito di ritornare all’Activity principale.