zoukankan      html  css  js  c++  java
  • 组件通信1-课本

    (1)MainActivity.java文件:

    package com.example.administrator.myapplication4;
    
    import android.support.v7.app.AppCompatActivity;
    import android.app.Activity;
    import android.content.DialogInterface;
    import android.content.Intent;
    import android.net.Uri;
    import android.os.Bundle;
    import android.view.View;
    import android.widget.Button;
    import android.widget.TextView;
    
    public class MainActivity extends Activity {
        private static final int SUBACTIVITY1=1;
        private static final int SUBACTIVITY2=2;
        TextView textView;
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
            textView=(TextView)findViewById(R.id.textShow);
            final Button btn1=(Button)findViewById(R.id.btn1);
            final Button btn2=(Button)findViewById(R.id.btn2);
    
            btn1.setOnClickListener(new View.OnClickListener() {
                public void onClick(View view){
                    Intent intent=new Intent(MainActivity.this,SubActivity1.class);
                    startActivityForResult(intent,SUBACTIVITY1);
                }
            });
    
            btn2.setOnClickListener(new View.OnClickListener() {
    
                public void onClick(View view) {
                    Intent intent=new Intent(MainActivity.this,SubActivity2.class);
                    startActivityForResult(intent,SUBACTIVITY2);
                }
            });
        }
        @Override
        protected void onActivityResult(int requestCode,int resultCode,Intent data){
            super.onActivityResult(requestCode,resultCode,data);
    
            switch (requestCode){
                case SUBACTIVITY1:
                    if(resultCode==RESULT_OK){
                        Uri uriDate=data.getData();
                        textView.setText(uriDate.toString());
                    }
                    break;
                case SUBACTIVITY2:
                    break;
            }
        }
    }

    (2)main_activity.xml

    <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="vertical">
    
        <TextView
            android:id="@+id/textShow"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:textSize="40dp"/>
    
        <Button
            android:id="@+id/btn1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="启动Activity1"/>
        <Button
            android:id="@+id/btn2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="启动Activity2"/>
    </LinearLayout>

    (3)SubActivity1.java文件:

    package com.example.administrator.myapplication4;
    
    import android.app.Activity;
    import android.content.Intent;
    import android.net.Uri;
    import android.os.Bundle;
    import android.support.annotation.Nullable;
    import android.view.View;
    import android.widget.Button;
    import android.widget.EditText;
    
    /**
     * Created by lh on 2018/10/11.
     */
    
    public class SubActivity1 extends Activity{
        @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.subactivity1);
            final EditText editText=(EditText)findViewById(R.id.edit);
            Button btnOK=(Button)findViewById(R.id.btn_ok);
            Button btnCancel=(Button)findViewById(R.id.btn_cancel);
    
            btnOK.setOnClickListener(new View.OnClickListener() {
    
                public void onClick(View view) {
                    String uriString=editText.getText().toString();
                    Uri data=Uri.parse(uriString);
                    Intent result=new Intent(null,data);
                    setResult(RESULT_OK,result);
                    finish();
                }
            });
    
            btnCancel.setOnClickListener(new View.OnClickListener() {
    
                public void onClick(View view) {
                    setResult(RESULT_CANCELED,null);
                    finish();
                }
            });
        }
    }

    (4)Subactivity1.xml文件:

    <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical">
    
        <TextView
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:text="SubActivity1"/>
    
        <EditText
            android:id="@+id/edit"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:hint="input here"/>
        <Button
            android:id="@+id/btn_ok"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="接受"/>
    
        <Button
            android:id="@+id/btn_cancel"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="撤销"/>
    </LinearLayout>

    (5)SubActivity2.java

    package com.example.administrator.myapplication4;
    
    import android.app.Activity;
    import android.os.Bundle;
    import android.os.PersistableBundle;
    import android.support.annotation.Nullable;
    import android.view.View;
    import android.widget.Button;
    
    /**
     * Created by lh on 2018/10/11.
     */
    
    public class SubActivity2 extends Activity{
        @Override
        public void onCreate(@Nullable Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.subactivity2);
    
            Button btnReturn=(Button)findViewById(R.id.btn_return);
            btnReturn.setOnClickListener(new View.OnClickListener() {
                public void onClick(View view) {
                    setResult(RESULT_CANCELED,null);
                    finish();
                }
            });
        }
    }

    (6)subactivity2.xml

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

    主界面:

    点击”启动Activity1”按钮,跳转到subactivity1页面

    点击启动“启动Activity2”按钮,出现如下图界面:

  • 相关阅读:
    R绘图学习笔记
    SVM与LR的比较
    精简android4.2
    vbox下android分辨率设置
    centos7命令
    mysql设置编码
    virutalbox虚拟机硬盘扩容
    spring boot学习
    SQL Server 2012清除连接过的服务器名称历史
    android AutoCompleteTextView和Spinner选中项加亮
  • 原文地址:https://www.cnblogs.com/loyolh/p/9949877.html
Copyright © 2011-2022 走看看