android开发之activity的跳转关闭问题

来源:互联网 发布:alien skin mac 编辑:程序博客网 时间:2024/06/05 02:58

在我的前面博客中:http://blog.csdn.net/writerpan/article/details/24912637,我用activity伪装成模态框,并用Intent调用,但是这样遇到一个问题:

实例代码:http://download.csdn.net/detail/writerpan/7286485

我有两个activity分别掉用我的模态框:如图界面可以直接添加好友即召唤出模态框,也可以进入查看资料后召唤出添加好友的模态框:


召唤出模态框后,添加成功或者失败后又有不同的操作,在第一个界面添加成功后刷新界面,第二个界面添加成功后关闭界面:

添加后关闭对话框,刷新好友列表


添加后关闭模态框,关闭资料界面,回到好友列表:


具体方法是:在添加成功后判断用户资料activity是否存在,存在就关闭,不存在就不关闭

所以:如何判断,如何在模态框的activity下关闭不知道存在不存在的用户资料activity?

方法如下:

在用户资料activity中添加一个静态引用,指向this:在初始化数据的时候给它赋值

public class InfoUser extends Activity {private ImageView headImage;private TextView userName;private TextView userQQShow;private TextView adressShow;private TextView userDisShow;private TextView phoneShow;private Button showButton;private User user;private int isFriend;private List<String> mGroup;static InfoUser myInfoUser;@Override    public void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.info_xiaohei);        initView();        initData();    }   private void initData() {   myInfoUser = this;   user = (User) getIntent().getSerializableExtra("user");   isFriend = getIntent().getIntExtra("isFrend",0);   mGroup = getIntent().getStringArrayListExtra("groupname");   if(isFriend == 0){//不是好友   showButton.setText("添加好友");   showUser();   }else{//是好友   showButton.setText("发送消息");   showUser();   }}
在添加好友成功的方法中去判断存在不:存在则调用UserIfo.this.finish()

T.showShort(AddFriend.this, "添加成功");    if(InfoUser.myInfoUser != null){InfoUser.myInfoUser.finish();//关闭好友信息界面 } finish();//关闭当前添加界面


测试通过,但是总觉得不太好,有优化的方法请留言,谢谢。






0 0