Android在一个Activity中更新另一个Activity的UI(以修改个性签名为例)

在SignatureActivity中修改UserFragment的UI。
步骤:

  1. 首先我们需要由UserFragment进入到SignatureActivity中,才能进行修改,相关代码为:
mSignName.setItemClickListener(new ItemView.itemClickListener() {
            @Override
            public void itemClick(String text) {
                Intent intent = new Intent(getActivity(),SignatureActivity.class);
                startActivityForResult(intent, 110);
            }
        });
  1. 对SignatureActivity中相关组件实现点击事件(比如说修改好之后,点击确认按钮就更新):
affirm.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                String str = editText.getText().toString();
                if(str == "") {
                    ToastUtil.showMessage(SignatureActivity.this,"请输入内容!!");
                }else {
                    Intent intent = new Intent(SignatureActivity.this, UserFragment.class);
                    intent.putExtra("mod_sign", str);
                    SignatureActivity.this.setResult(110, intent);
                    ToastUtil.showMessage(SignatureActivity.this,"更新成功!");
                }
            }
        });

里面的关键步骤为:

Intent intent = new Intent(SignatureActivity.this, UserFragment.class);
intent.putExtra("mod_sign", str);
SignatureActivity.this.setResult(110, intent);
ToastUtil.showMessage(SignatureActivity.this,"更新成功!");
  1. 在UserFragment中重写onActivityResult并更新信息:
public void onActivityResult(int requestCode, int resultCode, Intent data) {
        if(110 == requestCode) {
            String mod_sign = data.getExtras().getString("mod_sign");
            mSignName.setRightContent(mod_sign);
        }
    }

效果:
UserFragment初始效果:
在这里插入图片描述
点击进入SignatureActivity:
在这里插入图片描述
修改:
在这里插入图片描述
返回
UserFragment:
在这里插入图片描述
修改成功!!

猜你喜欢

转载自blog.csdn.net/Cyril_KI/article/details/108012107