package com.xiaomi.xms.sales.activity; import android.content.Intent; import android.os.Bundle; import android.support.v4.app.Fragment; import android.text.TextUtils; import com.xiaomi.xms.sales.R; import com.xiaomi.xms.sales.ShopIntentService; import com.xiaomi.xms.sales.ShopIntentServiceAction; import com.xiaomi.xms.sales.ui.ComboFragment; import com.xiaomi.xms.sales.util.Constants; import com.xiaomi.xms.sales.util.ToastUtil; public class ComboActivity extends BaseActivity { public static final String TAG_COMBO_FRAGMENT = "combo_fragment"; private ComboFragment mComboFragment; private Bundle mBundle; private String mTag; private ShopIntentServiceAction mAddShoppingcartAction; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setCustomContentView(R.layout.combo_activity); handleIntent(getIntent()); showFragment(mTag, mBundle, false); } @Override public void onNewIntent(Intent intent) { setIntent(intent); handleIntent(getIntent()); showFragment(mTag, mBundle, false); } @Override protected Fragment newFragmentByTag(String tag) { Fragment fragment = null; if (TAG_COMBO_FRAGMENT.equals(tag)) { mComboFragment = new ComboFragment(); fragment = mComboFragment; } return fragment; } private void handleIntent(Intent intent) { mBundle = intent.getExtras(); mTag = TAG_COMBO_FRAGMENT; } @Override public void onServiceCompleted(String action, Intent callbackIntent) { super.onServiceCompleted(action, callbackIntent); if (TextUtils.equals(action, Constants.Intent.ACTION_ADD_SHOPPING_CART)) { String result = callbackIntent.getStringExtra( Constants.Intent.EXTRA_ADD_SHOPPING_CART_RESULT_MSG); if (TextUtils.equals(result, Constants.AddShoppingCartStatus.ADD_SUCCESS)) { if (mComboFragment != null && mComboFragment.isVisible()) { mComboFragment.playAddCartAnimation(); } } else if (TextUtils.equals(result, Constants.AddShoppingCartStatus.ADD_FAIL)) { if (mComboFragment != null && mComboFragment.isVisible()) { mComboFragment.onAddShoppingCartFinish(); } ToastUtil.show(this, getString(R.string.add_shopping_cart_fail)); } else { if (mComboFragment != null && mComboFragment.isVisible()) { mComboFragment.onAddShoppingCartFinish(); } ToastUtil.show(this, result); } unRegisterServiceAction(); } } public void registerServiceAction() { mAddShoppingcartAction = new ShopIntentServiceAction( Constants.Intent.ACTION_ADD_SHOPPING_CART, this); ShopIntentService.registerAction(mAddShoppingcartAction); } public void unRegisterServiceAction() { ShopIntentService.unregisterAction(mAddShoppingcartAction); } }