0

我在适配器类中初始化的片段中有一个切换按钮,它作为收藏列表按钮工作,如果单击它,它会将产品添加到 firebase 数据库,并在再次单击它时将其删除。

addToCart.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
        @Override
        public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
            if (customer.userId != null) {
                mFirebaseDatabase = FirebaseDatabase.getInstance();
                mCustomerRefernce = mFirebaseDatabase.getReference().child("Favorite").child(customer.userId);
                cmObej = getItem(position);
                if (isChecked) {
                    mCustomerRefernce.child(cmObej.getId()).setValue(true);
                    addToCart.setBackgroundDrawable(ContextCompat.getDrawable(getContext(), R.drawable.ic_filledstar_blue2_24dp));
                } else {
                    mCustomerRefernce.child(cmObej.getId()).removeValue();
                    addToCart.setBackgroundDrawable(ContextCompat.getDrawable(getContext(), R.drawable.ic_star_border_blue2_24dp));
                }
            }else{
                new AlertDialog.Builder(getContext())
                        .setTitle("Alert")
                        .setMessage("Can't add to the list, do you want to sign in?")
                        .setCancelable(true)
                        .setPositiveButton("Yes", new DialogInterface.OnClickListener() {
                            @Override
                            public void onClick(DialogInterface dialog, int which) {
                                Intent i = new Intent(getContext(), Signin2.class);
                                getContext().startActivity(i); }
                        }).setNegativeButton("No", new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialog, int which) {

                    }
                }).show();
            }
        }
    });

问题是每当它点击一个新的活动时,正如你在这里看到的那样

V/FA: Activity paused, time: 9574193
V/FA: onActivityCreated
V/FA: Activity resumed, time: 9574270 

你认为问题是什么?

4

1 回答 1

0

当对话框出现在现有活动之上时,现有活动将通过调用移动到部分不可见状态onPause()

如果用户从暂停状态返回到您的活动(在这种情况下为关闭对话框),系统将恢复它并调用该onResume()方法。

您的活动嵌入片段, 活动恢复时将调用onActivityCreated 。

于 2018-11-11T22:08:06.217 回答