192 votes

À l'aide de l'Intention dans une application Android pour montrer une autre activité

Dans mon application Android, j'ai deux classes d'activité. J'ai un bouton sur le premier et j'en veux pour preuve la seconde lorsqu'il est cliqué, mais j'obtiens une erreur. Voici les catégories:

public class FirstActivity extends Activity {

  @Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    Button orderButton = (Button)findViewById(R.id.order);

    orderButton.setOnClickListener(new View.OnClickListener() {

      @Override
      public void onClick(View view) {
        Intent intent = new Intent(FirstActivity.this, OrderScreen.class);
        startActivity(intent);
      }

    });
  }
}

La deuxième catégorie qui s'affiche lorsque le bouton est cliqué, mais ne le fait jamais:

public class OrderScreen extends Activity {

  @Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.order);

    Button orderButton = (Button) findViewById(R.id.end);

    orderButton.setOnClickListener(new View.OnClickListener() {

      @Override
      public void onClick(View view) {
        finish();
      }

    });
  }
}

Comment puis-je créer un bouton qui permettra de montrer la deuxième activité?

174voto

Tai Squared Points 5010

La question était la OrderScreen activité n'a pas été ajoutés à la AndroidManifest.xml. Une fois j'ai ajouté que, comme un nœud d'application, il a fonctionné correctement.

<activity android:name=".OrderScreen" />

161voto

user106011 Points 1827

Ajoutez cette ligne à votre AndroidManifest.xml:

<activity android:name=".OrderScreen" />

16voto

Sunil Chavan Points 81

----FirstActivity.java-----

    package com.mindscripts.eid;
    import android.app.Activity;
    import android.content.Intent;
    import android.os.Bundle;
    import android.view.View;
    import android.view.View.OnClickListener;
    import android.widget.Button;

public class FirstActivity extends Activity {

protected void onCreate(Bundle savedInstanceState) {
    // TODO Auto-generated method stub
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    Button orderButton = (Button) findViewById(R.id.order);
    orderButton.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View v) {
            Intent intent = new Intent(FirstActivity.this,OrderScreen.class);
            startActivity(intent);
        }
    });

 }
}

---OrderScreen.java---

    package com.mindscripts.eid;

    import android.app.Activity;
    import android.os.Bundle;
    import android.view.View;
    import android.view.View.OnClickListener;
    import android.widget.Button;



    public class OrderScreen extends Activity {
@Override



protected void onCreate(Bundle savedInstanceState) {
    // TODO Auto-generated method stub
    super.onCreate(savedInstanceState);
    setContentView(R.layout.second_class);
    Button orderButton = (Button) findViewById(R.id.end);
    orderButton.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View v) {
            finish();
        }
    });

 }
}

---AndroidManifest.xml----

    <?xml version="1.0" encoding="utf-8"?>
    <manifest xmlns:android="http://schemas.android.com/apk/res/android"
  package="com.mindscripts.eid"
  android:versionCode="1"
  android:versionName="1.0">


<application android:icon="@drawable/icon" android:label="@string/app_name">
    <activity android:name=".FirstActivity"
              android:label="@string/app_name">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
    <activity android:name=".OrderScreen"></activity>
</application>

4voto

Mahesh Points 1655

Utilisez ce code:

Intent intent=new Intent(context,SecondActivty.class);
startActivity(intent);
finish();

contexte: se référer à l'actuel contexte d'activité,

assurez-vous que vous avez ajouté l'activité dans le fichier manifeste android.

Suivants du code pour ajouter une activité dans le fichier manifeste android

<Activity name=".SecondActivity">
</Activity>

4voto

java dev Points 340
<activity android:name="[packagename optional].ActivityClassName"></activity>

Simplement en ajoutant de l'activité que nous voulons interrupteur doit être placé dans le fichier manifest

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by: