Programmation de composant mobiles aka Android responsable : Wiesl(cid:32)aw Zielonka [email protected] http://liafa.univ-paris-diderot.fr/∼zielonka September 19, 2015 Environnement de travail Android Studio Cr´eation de la premi`ere application : (cid:73) File→New Project (cid:73) choisir le nom de l’application et domaine, le domaine par exemple toto.info.paris7.fr (cid:73) choisir Phone and Tablet et le minimum SDK, (cid:73) choisir Blank Activity, (cid:73) le nom d’activit´e, on peut laisser MainActivity, Les fichiers principaux cr´e´es par Android studio app/manifests/AndroidManifest.xml <?xml version=”1.0” encoding=”utf−8”?> <manifest xmlns:android=”http://schemas.android.com/apk/res/android” package=”fr. liafa .zielonka.tressimple” > <application android:allowBackup=”true” android:icon=”@mipmap/ic launcher” android:label=”@string/app name” android:theme=”@style/AppTheme” > <activity android:name=”.MainActivity” android:label=”@string/app name” > <intent−filter> <action android:name=”android.intent.action.MAIN” /> <category android:name=”android.intent.category.LAUNCHER” /> </intent−filter> </activity> </application> </manifest> app/res/layout/activity main.xml <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=”.MainActivity”> <TextView android:text=”@string/hello world” android:layout width=”wrap content” android:layout height=”wrap content” /> </RelativeLayout> layout - un container qui contient d’autres ´el´ements graphiques (widgets ou d’autres containers). exemples : RelativeLayout, LinearLayout TextView un widget qui contient un text (non modifiable) app/res/values/strings.xml Les ressources de type string <resources> <string name=”app name”>TresSimple</string> <string name=”hello world”>Hello world!</string> <string name=”action settings”>Settings</string> </resources> app/java/[package]/MainActivity package fr . liafa .zielonka. tressimple ; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.Menu; import android.view.MenuItem; public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState ); setContentView(R.layout. activity main ); } // la suite sans interet pour l ’instant @Override public boolean onCreateOptionsMenu(Menu menu) { } @Override public boolean onOptionsItemSelected(MenuItem item) { } } TextView TextView un widget qui permet d’afficher un texte que l’utilisateur ne pourra pas modifier (bien suˆr, il est possible de modifier le texte affich´e depuis java). Quelques attributs de TextView: (cid:73) android:layout width - largeur, valeurs : (cid:73) wrap content – largeur suffisante pour contenir le contenu (text), (cid:73) match parent – largeur du parent, (cid:73) 10dp – largeur de 10 unit´e (screen density independent pixels). (cid:73) android:layout height - hauteur, valeurs match parent ou wrap content. (cid:73) android:text – le contenu (texte `a afficher): (cid:73) android:text="text affiche" – texte `a afficher en dur (d´econseill´e), (cid:73) android:text="@string/hello text" – en utilisant la ressource string nomm´e hello text (pr´ef´er´e). Ressources string Les ressources de type string sont sp´ecifi´ees dans le fichier xml app/res/values/strings.xml. Exemple de ce fichier : <resources> <string name=”app name”>TresSimple</string> <string name=”hello world”>Hello world!</string> <string name=”action settings”>Settings</string> </resources> Pour obtenir la valeur de la ressource string dont le nom est hello_world dans un fichier layout on ´ecrit "@string/hello_world" @ au d´ebut signifie qu’il s’agit d’une ressource, string indique que c’est une ressource string et apr`es / on met le nom de la ressource. Exemple TextView <TextView android:text=”@string/hello world” android:layout width=”wrap content” android:layout height=”wrap content” /> sp´ecifie un TextView qui contient un string d´efini dans la ressource string et dont la largeur et hauteur est juste suffisant pour montrer le texte affich´e.
Description: