如何进行两项活动?

时间:2016-09-13 11:28:35

标签: android android-intent

我是Android工作室的新手,我试图在我的应用程序中进行两项活动,但它不起作用。 我不知道自己做错了什么,我认为这是我在意图中的第一个选择。

我是新手,我想要一个简单的解决方案,或者如果你能解释一下我必须做些什么就可以了:)

这是我的第一个活动(MainActivity):

import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;

public class MainActivity extends AppCompatActivity {

private Button mPasserelle = null;
public final static String AGE = "com.myapplis.multiactivite.AGE";

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    mPasserelle = (Button) findViewById(R.id.passerelle);
    mPasserelle.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            Intent secondeActivite = new Intent(MainActivity.this,IntentExample.class);
            secondeActivite.putExtra(AGE,24);
            startActivity(secondeActivite);
        }
    });

    }
}

第二个活动(IntentExample):

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.widget.TextView;

public class IntentExample extends Activity{
 @Override
  public void onCreate(Bundle savedInstanceState){
    super.onCreate(savedInstanceState);
    setContentView(R.layout.seconde_activite);
    Intent i = getIntent();


    int age = i.getIntExtra(MainActivity.AGE,0);
    TextView resultat= (TextView)findViewById(R.id.resultat);
    resultat.setText("Le résultat est : "+age);

}
}

这是我的第一个布局(activity_main),只是一个简单的按钮来推送第二个活动:

<?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:orientation="vertical"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context="com.dunomade.multiactivite.MainActivity">

    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/passerelle"/>
 </LinearLayout>

现在这是我的第二个布局(seconde_activite),只是一个简单的文字向我展示了第二个活动:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical" android:layout_width="match_parent"
    android:layout_height="match_parent">
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/resultat"
        android:text="" />

</LinearLayout>

结束,这是我的表现:

<?xml version="1.0" encoding="utf-8"?>
  <manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.myapplis.multiactivite">

    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">
        <activity android:name=".MainActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity android:name=".IntentExample"
            android:label="seconde acivite">

        </activity>
    </application>

</manifest>

当我运行应用程序时,MainActivity很好,但是当我尝试点击按钮时,AVD会告诉我&#34;您是否在AndroidManifest中声明了此活动?&#34;。我在我的清单上宣布它,但我认为问题出在我的MainActivity中。

请帮助我,我觉得对你来说它非常简单,但我无法解决它,我尝试了很多方法,但我已经遇到了同样的错误。 感谢阅读和回答=)

1 个答案:

答案 0 :(得分:0)

我建议您在活动名称之前使用包名称,如下所示(某些设备需要此功能,如Moto G):

<activity android:name="your.package.IntentExample "></activity>

而是使用:

public class IntentExample extends Activity

使用:

public class IntentExample extends AppCompatActivity