Comment ouvrir un deuxième activité sur cliquez sur le bouton de l'application android
Je suis en train d'apprendre à construire des applications android et j'ai besoin d'une aide spécifique. Je n'arrive pas à obtenir ma tête autour de ce qui les bits de code de modèle, je suis amené à changer, et les bits sont statiques.
Dans le DISPOSITION dossier que j'ai mon ACTIVITY_MAIN.XML qui se lit
<?xml version="1.0" encoding="utf-8"?>
<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="horizontal">
<Button
android:id="@+id/button1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/main_buttons_photos" />
</LinearLayout>
Prochaine, j'ai mon deuxième activité ACTIVITY_SEND_PHOTOS.XML qui est
<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" >
<TextView
android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:text="@string/hello_world"
tools:context=".SendPhotos" />
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:text="@string/title_activity_send_photos"
android:textAppearance="?android:attr/textAppearanceLarge" />
</RelativeLayout>
Je puis avoir mon MainActivity.java (est-ce la .de classe?) ce lit
package com.exemple.sanction.j.-c.;
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.View;
public class MainActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.activity_main, menu);
return true;
}
/** Called when the user clicks the Send button */
public void sendMessage(View view) {
//Do something in response to button
}
}
et puis mon SendPhotos.java fichier;
package com.example.assent.bc;
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.MenuItem;
import android.support.v4.app.NavUtils;
public class SendPhotos extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_send_photos);
getActionBar().setDisplayHomeAsUpEnabled(true);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.activity_send_photos, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case android.R.id.home:
NavUtils.navigateUpFromSameTask(this);
return true;
}
return super.onOptionsItemSelected(item);
}
}
Je voudrais que le bouton de mon activité principale pour accéder à mon sendphotos activité, le simple fait d'ouvrir cette activité, rien de compliqué, pas tout envoi de données ou de quoi que ce soit.
Je sais que quelque part, j'ai besoin de mon
Intent i = new Intent(FromActivity.this, ToActivity.class);
startActivity(i);
mais je n'ai aucune idée de quoi remplacer ToActivity.class avec ou quoi d'autre j'ai besoin de où les.
- double possible de à l'Aide de l'Intention dans une application Android pour montrer une autre activité
- ToActivity.class est votre nom secondactivity
- Ceci peut-être la meilleure source pour vous
- L'intention de la classe n'ont pas de tout constructeur qui acceptent les deux de la classe comme argment!. que dois-je faire?
Vous devez vous connecter pour publier un commentaire.
Vous pouvez vous déplacer à l'activité souhaitée sur le bouton cliquez sur. juste ajouter
android:onClick="sendMessage"
cette ligne.xml:
Dans votre activité principale, il suffit d'ajouter cette méthode:
Et la chose la plus importante: n'oubliez pas de définir votre activité dans
manifest.xml
>
dans l'activité de la baliseView
,Intent
et l'activité de les noms sont dans le rouge. Ai-je besoin d'importer quoi que ce soit pour la Vue?Essayer cette
De l'Activité : là où vous êtes actuellement ?
À l'Activité: - l'endroit où vous voulez aller ?
Intent i = new Intent( MainActivity.this, SendPhotos.class);
startActivity(i);
La fois de l'Activité doit être inclus dans le fichier de manifeste autrement il ne sera pas trouvé le fichier de classe et de jeter la Force de fermeture.
Modifier votre Mainactivity.java
maintenant Écrire le code pour l'événement click.
Espère qu'il va travailler pour vous.
La réponse pour le débutant complet à partir d'un noob complet:
MainActivity
est le nom de la première activité.MainActivity2
est le nom de la deuxième activité.button1
est le I. D du bouton en xml pourMainActivity
Activité.il suffit de suivre cette étape (je ne suis pas à l'écriture de code juste Bcoz vous pouvez faire des copier-coller et ne peux pas apprendre)..
tout d'abord à tous vous avez besoin de déclarer un bouton qui vous avez à disposition
Faire référence à ce bouton par trouver son id (à l'aide de findviewById) dans oncreate
setlistener pour bouton (comme setonclick auditeur)
dernière poignée de l'événement click (les moyens de commencer une nouvelle activité en utilisant l'intention comme vous le savez déjà)
N'oubliez pas d'ajouter l'activité dans le fichier de manifeste
BTW c'est tout simple, je voudrais suggérer que vous venez de démarrer à partir de simples tutoriels disponibles
sur le net sera mieux pour vous..
Meilleure chance pour Android
Remplacer les dessous de la ligne de code:
Ajouter les lignes ci-dessous dans votre fichier manifeste:
Remplacer votre MainActivity.class avec ces code
Ajouter ces codes dans votre
AndroidManifest.xml
après la</activity>
et Avant</application>
Cela fonctionne toujours, doivent être parfaitement:
ajouter le code ci-dessous à activity_main.xml fichier:
et il suffit d'ajouter la méthode ci-dessous pour le MainActivity.java fichier:
Si vous disposez de deux boutons et d'avoir le même identifiant de l'appel à votre bouton, cliquez sur événements comme celui-ci:
Lorsque vous avez cliqué sur
button1
,button2
de travail et vous ne pouvez pas ouvrir votre deuxième activité.DANS DU CODE JAVA
}
Vous pouvez vous déplacer à l'activité souhaitée sur le bouton cliquez sur. juste ajouter
android:onClick="timerApp"cette ligne.
OU dans onCreate() permet d'ajouter le code ci-dessous