示例#1
0
  private void setButtonStatus() {
    // 显示物流和客服电话
    mActivity.findViewById(R.id.orderdetail_wuliu_button).setOnClickListener(this);
    mActivity.findViewById(R.id.orderdetail_callphone_button).setOnClickListener(this);
    // 拆单的订单 不能取消订单,不能支付
    if (!mOrderModel.getPackageOrderId().equals(mOrderModel.getOrderCharId())) {
      mActivity.findViewById(R.id.orderdetail_relative_pay).setVisibility(View.GONE);
      mActivity.findViewById(R.id.orderdetail_button_cancel).setVisibility(View.GONE);
      mActivity.findViewById(R.id.orderdetail_button_pay).setVisibility(View.GONE);
      return;
    }

    final int orderStatus = mOrderModel.getStatus();
    boolean showCancel = mOrderModel.isCanCancel() && OrderStatus.canCancel(orderStatus);
    // check cancel button show or gone
    if (showCancel) {
      mActivity.findViewById(R.id.orderdetail_button_cancel).setVisibility(View.VISIBLE);
    } else {
      mActivity.findViewById(R.id.orderdetail_button_cancel).setVisibility(View.GONE);
    }

    boolean showPay =
        mOrderModel.isNeedPay()
            && (mPayCore =
                    PayFactory.getInstance(
                        mActivity, mOrderModel.getPayType(), mOrderModel.getOrderCharId(), false))
                != null;
    mActivity
        .findViewById(R.id.orderdetail_button_pay)
        .setVisibility(showPay ? View.VISIBLE : View.GONE);

    boolean showLayout = showCancel && showPay;
    mActivity
        .findViewById(R.id.orderdetail_relative_pay)
        .setVisibility(showLayout ? View.VISIBLE : View.GONE);
  }