自学Android第三天——穿梭于活动间的Intent

2019-04-11  本文已影响0人  GoldenR

</使用显示Intent,首先创建一个FirstActivity活动,系统自动生成对应的xml文件。然后修改First_layout.xml文件,代码如下:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"

    android:id="@+id/activity_main"

    android:layout_width="match_parent"

    android:layout_height="match_parent"

    android:orientation="vertical">

    <Button

        android:layout_width="match_parent"

        android:layout_height="wrap_content"

        android:id="@+id/but_1"

        android:text="Button 1"

        android:textAllCaps="false"/>

        /**

        *id="@+id/but_1"唯一标识符,就像身份证一样重要。

        *textAllCaps="false"禁止系统自动将英文进行大写转换

        */

</LinearLayout>

改完后接着修改FirstActivity里的代码:

public class MainActivityextends AppCompatActivityimplements View.OnClickListener {

    @Override

    protected void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.activity_main);

        Button but_1=(Button)findViewById(R.id.but_1);

        but_1.setOnClickListener(new View.OnClickListener() {

            @Override

            public void onClick(View v) {

                Intent intent=new Intent(FristActivity.this,SecondActivity.class);

                startActivity(intent);

            }

    });

}

其中intent()中第一个参数是指启动活动的上下文,第二个参数则是指启动的目标活动了。

不过这样还不够的,我们还要在建立新的第二个活动,不然另一个活动不存在,就不能进行"穿梭"。

类似上文。将活动的名字命名为SecondActivity。同样的修改Second_layout.xml和SecondActivity。

(可以和上面的一样,不过Intent()里面参数反过来。这样可以实现这两个页面之间的相互跳转)

在这里提一下用Intent在活动之间进行传值。First_layout.xml代码如下:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"

    android:id="@+id/activity_main"

    android:layout_width="match_parent"

    android:layout_height="match_parent"

    android:orientation="vertical">

    <Button

        android:layout_width="match_parent"

        android:layout_height="wrap_content"

        android:id="@+id/but_1"

        android:text="Button 1"

        android:textAllCaps="false"/>

        /**

        *id="@+id/but_1"唯一标识符,就像身份证一样重要。

        *textAllCaps="false"禁止系统自动将英文进行大写转换

        */

<EditText

    android:layout_width="match_parent"

    android:layout_height="wrap_content"

    android:id="@+id/edit_1"

    android:hint="Type something here"

    android:maxLines="2"/>

    /**

    *hint=""提示性文字

    *maxLines=""设置最大行数

    */

</LinearLayout>

FristActivity代码如下:

public class MainActivityextends AppCompatActivityimplements View.OnClickListener {

    private EditTextedit_1;

    @Override

    protected void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.activity_main);

        Button but_1=(Button)findViewById(R.id.but_1);

        edit_1=(EditText)findViewById(R.id.edit_1);

        but_1.setOnClickListener(new View.OnClickListener() {

            @Override

            public void onClick(View v) {

                //getText()获取编辑框的内容,toString()将获取的内容转换成字符串类型

                String edit=edit_1.getText().toString();

                Intent intent=new Intent(FristActivity.this,SecondActivity.class);

                intent.putExtra("content",edit);

                startActivity(intent);

            }

        });

    }

}

Second_layout.xml和SecondActivity同上一样,也只是将Intent()里面的参数调换位置。实现两个活动之间的跳转和传值。

上一篇下一篇

猜你喜欢

热点阅读