[JAVA] Développement Android ~ transition d'écran (intention) ~

introduction

Bonjour. Je suis Wataku, un programmeur côté serveur qui étudie la programmation dans une certaine école. : détendu: Développons également Android cette fois. Le thème cette fois est * "Intention" *.

Personne cible

Deux types d'intentions

Voyons maintenant comment le gérer.

Intention explicite

Pour effectuer une transition d'écran avec une intention explicite, suivez les étapes ci-dessous. ** 1) Enregistrez l'activité dans AndroidManifest.xml **

<?xml version="1.0" encoding="utf-8"?>
<manifest ...... >

    <application ........ >
        <activity>

~ Activité principale ~

        </activity>

        <!--ajouter à-->
        <activity android:name="Nom du package + nom de la classe">

    </application>

</manifest>

*Si la classe d'activité se trouve directement sous le package racine, "."Nom de la classe" est OK!

** Il est pratique de créer la procédure ci-dessus à partir de "Fichier> Nouveau> Activité> Activité vide". *

** 2) Écran de démarrage ** ○ Comment démarrer un autre écran à partir de l'écran actuel. (1) Génération d'objet d'intention.

~~~~~~~~ = new Intent(le contexte,Activité lancée)

② Exécutez la méthode ** startActivity () ** avec ① comme argument.

** 3) Transmission de données ** ○ Utilisez ** putExtra ("nom", valeur) ** pour transmettre des données à l'activité de démarrage.

** 4) Recevoir des données ** ○ La méthode de réception des données dans l'activité de démarrage est la suivante. ① Objet Get Intent

Intent intent = getIntent();

② Obtenir l'objet Bundle

Bundle extra = intent.getExtra();

③ Obtenez des données en utilisant la méthode get data type de Bundle ForResult ○ Lors du traitement avec l'activité d'origine après la fin de l'activité de démarrage ** 1) La méthode suivante pour démarrer l'activité **

startActivityForResult(Objet d'intention,Code requis)

** 2) La méthode suivante juste avant la fin () de l'activité de démarrage **

setResult(Code résultat,Objet d'intention)

** Code de résultat *

** 3) Exécutez 1) et 2) et exécutez la méthode suivante dans l'activité d'origine. ** **

onActivityResult()

3 arguments

--int requestCode: 1) valeur entière spécifiée par le deuxième argument --La valeur constante spécifiée par le premier argument de int resultCode: 2)

Exemple de code

ForResultSampleActivity.java(Source de lancement)


Intent intent = new Intent(ForResultSampleActivity.this,RatingEvaluateActivity.class);
inten1.putExtra("name", name);
startActivityForResult(intent, RATING_EVALUATE);

RatingEvaluateActivity.java(Destination de démarrage)


Intent intent = getIntent();
String name = intent.getStringExtra("name");

Intention implicite

La procédure de lancement d'autres applications avec une intention implicite est la suivante. ** 1) Créez un objet URI. ** **

Uri uri = Uri.porse(Chaîne URI(Voir ci-dessous));

** 2) Créez un objet Intent. ** **

Intent intent = new Intent(Une constante qui représente une action.(Voir ci-dessous), uri);

** 3) Lancez l'activité. ** **

startActivity(intent) ;

URI L'URI de l'application standard Android OS est la suivante.

・ Navigateur → http: // ....., https: // ..... ・ Carte → géo: Latitude, longitude geo: o, o? g = chaîne de recherche

(Remarque) `` Les mots-clés de recherche japonais sont Encode avec URLEncoder.encode ([mot-clé], [format d'encodage (URF-8, etc.)]). ''

・ Téléphone → tel: Numéro de téléphone

action

Utilisez les champs constants de la classe Intent.

--ACTION_VIEW → Affichage à l'écran --ACTION_CALL → Passer un appel basé sur les données. --ACTION_DIAL → Afficher l'écran pour passer un appel --ACTION_SEND → Envoyer des e-mails / SMS

Exemple de code

① Transition vers l'application cartographique

try {
     TextView etKeyword = findViewById(R.id.etKeyword);
     String keyword = etKeyword.getText().toString();
     keyword = URLEncoder.encode(keyword, "utf-8");
     Uri uri = Uri.parse("geo:0,0?q=" + keyword);
     Intent intent = new Intent(Intent.ACTION_VIEW, uri);
     startActivity(intent);
} catch(UnsupportedEncodingException ex) {
     Log.e("MapSearchActivity", "échec de la conversion des mots clés", ex);
}

② Transition vers le navigateur

String url = "http:://www.~~~.~~";
Uri uri = Uri.parse(url);

Intent intent = new Intent(Intent.ACTION_VIEW, uri);
startActivity(intent);

c'est tout. Si vous avez des suggestions telles que quelque chose qui ne va pas, veuillez nous contacter. Merci d'avoir lu jusqu'au bout.

Recommended Posts

Développement Android ~ transition d'écran (intention) ~
Transition d'écran à l'aide de l'intention dans Kotlin
Méthode de transition d'écran
Mémorandum de transition d'écran
Développement Android app_preparation
Transition d'écran JavaFX8
[Android Studio] Transition d'écran par le bouton [Java]
Résumé du lien de développement Android
Préparation au développement d'applications Android 7/15
Site de référence de développement Android
[Android / Java] Transition d'écran et traitement de retour par fragments
L'ingénieur iOS démarre le développement Android
Lancement du développement personnel de l'application Android
Introduction au développement d'applications Android
Développement d'applications ROS sur Android
[Android] Quittez l'activité de la source de transition au moment de la transition d'écran
Transition d'écran Mémorandum de transfert d'informations
Paramètres d'animation au moment de la transition d'écran
Transition d'écran avec swing, java
À propos des bases du développement Android
[Rails] Comment empêcher la transition d'écran
Premier développement Android pour les gens occupés
Transition d'écran par méthode Post [Java]
Une collection de bibliothèques utiles dans le développement Android
[Java Swing] Transition d'écran par CardLayout
Notes pour les débutants en développement d'applications Android
Une série de problèmes dans le développement de studios Android
[Android] Recevoir une intention avec le récepteur de diffusion
Application Android: expliquons le mécanisme de transition d'écran avec un code simple
[Développement d'applications Android] Comment afficher en plein écran (barre de notification masquée)