大二寒假作业之Android

今日学习了页面跳转使用Intent进行传值。使用Intent的putExtra()即可传值,使用getStringExtra()或getIntExtra()等接受,跟web类似。

但是如果使用startActivity不会进行数据回传,要使用startActivityForResult(intent,100)函数第一个参数不用说是Intent,

第二个是requestCode用于区分是哪个页面传回来的。还要重写onActivityResult函数。

protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
        AlertDialog.Builder builder=new AlertDialog.Builder(this);
        builder.setTitle("( ゜- ゜)つロ 乾杯~").setIcon(R.mipmap.ic_launcher).
                setMessage("你刚才点击了第"+resultCode+"个按钮").setCancelable(true);
        AlertDialog ad=builder.create();
        ad.show();
    }
 public void onClick1(View view) {
        Button button1=findViewById(R.id.button1);
        Intent intent=new Intent();
        intent.putExtra("name",(String)lists.get(0).get("name"));
        intent.putExtra("content",(String)lists.get(0).get("content"));
        intent.putExtra("imageViews",(int)lists.get(0).get("imageViews"));
        intent.putExtra("flag",1);
        intent.setClass(this,MyActivity.class);
        startActivityForResult(intent,1);
    }
        Intent intent=getIntent();
        String name=intent.getStringExtra("name");
        String content=intent.getStringExtra("content");
        int imageViews=intent.getIntExtra("imageViews",R.drawable.aila);
        TextView textview1=findViewById(R.id.text1);
        TextView textView2=findViewById(R.id.text2);
        ImageView imageview=findViewById(R.id.image1);
        int flag=intent.getIntExtra("flag",0);
        textview1.setText(name);
        textView2.setText(content);
        imageview.setImageResource(imageViews);
        setResult(flag);

 

posted @ 2021-02-08 23:30  风吹过半夏  阅读(96)  评论(0编辑  收藏  举报