/** * Displays a SuperActivityToast. */ private void displaySuperToast(SuperActivityToast superActivityToast) { /* If this SuperActivityToast is somehow already showing do nothing */ if(superActivityToast.isShowing()) { return; } final ViewGroup viewGroup = superActivityToast.getViewGroup(); final View toastView = superActivityToast.getView(); if(viewGroup != null) { try { viewGroup.addView(toastView); if(!superActivityToast.getShowImmediate()) { toastView.startAnimation(getShowAnimation(superActivityToast)); } } catch(IllegalStateException e) { this.cancelAllSuperActivityToastsForActivity(superActivityToast.getActivity()); } } /* Dismiss the SuperActivityToast at the set duration time unless indeterminate */ if(!superActivityToast.isIndeterminate()) { Message message = obtainMessage(Messages.REMOVE); message.obj = superActivityToast; sendMessageDelayed(message, superActivityToast.getDuration() + getShowAnimation(superActivityToast).getDuration()); } }
public ReferenceHolder(SuperActivityToast superActivityToast) { mType = superActivityToast.getType(); if (mType == Type.BUTTON) { mButtonText = superActivityToast.getButtonText().toString(); mButtonTextSize = superActivityToast.getButtonTextSize(); mButtonTextColor = superActivityToast.getButtonTextColor(); mButtonIcon = superActivityToast.getButtonIcon(); mDivider = superActivityToast.getDividerColor(); mClickListenerTag = superActivityToast.getOnClickWrapperTag(); mButtonTypefaceStyle = superActivityToast.getButtonTypefaceStyle(); mToken = superActivityToast.getToken(); } if (superActivityToast.getIconResource() != 0 && superActivityToast.getIconPosition() != null) { mIcon = superActivityToast.getIconResource(); mIconPosition = superActivityToast.getIconPosition(); } mDismissListenerTag = superActivityToast.getOnDismissWrapperTag(); mAnimations = superActivityToast.getAnimations(); mText = superActivityToast.getText().toString(); mTypefaceStyle = superActivityToast.getTypefaceStyle(); mDuration = superActivityToast.getDuration(); mTextColor = superActivityToast.getTextColor(); mTextSize = superActivityToast.getTextSize(); mIsIndeterminate = superActivityToast.isIndeterminate(); mBackground = superActivityToast.getBackground(); mIsTouchDismissible = superActivityToast.isTouchDismissible(); }