package com.mm.android.deviceaddmodule.p_ap; import android.animation.AnimatorSet; import android.animation.ObjectAnimator; import android.animation.ValueAnimator; import android.os.Bundle; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.ImageView; import android.widget.TextView; import com.mm.android.deviceaddmodule.R; import com.mm.android.deviceaddmodule.base.BaseDevAddFragment; import com.mm.android.deviceaddmodule.contract.ApPairConstract; import com.mm.android.deviceaddmodule.helper.DeviceAddHelper; import com.mm.android.deviceaddmodule.helper.PageNavigationHelper; import com.mm.android.deviceaddmodule.mobilecommon.entity.AddApResult; import com.mm.android.deviceaddmodule.mobilecommon.entity.deviceadd.DeviceAddInfo; import com.mm.android.deviceaddmodule.mobilecommon.widget.CircleCountDownView; import com.mm.android.deviceaddmodule.model.DeviceAddModel; import com.mm.android.deviceaddmodule.presenter.ApPairPresenter; /** * 配件网关配对页 **/ public class ApPairFragment extends BaseDevAddFragment implements ApPairConstract.View, CircleCountDownView.OnCountDownFinishListener { ApPairConstract.Presenter mPresenter; ImageView mTipImg,mPairImage1,mPairImage2; TextView mTipTxt,mTipTxt2; CircleCountDownView mCountDownView; public static ApPairFragment newInstance() { ApPairFragment fragment = new ApPairFragment(); Bundle args = new Bundle(); fragment.setArguments(args); return fragment; } @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { // Inflate the layout for this fragment return inflater.inflate(R.layout.fragment_ap_pair, container, false); } @Override protected void initView(View view) { mPairImage1= view.findViewById(R.id.pair_img1); mPairImage2= view.findViewById(R.id.pair_img2); mTipImg= view.findViewById(R.id.tip_img); mTipTxt= view.findViewById(R.id.tip_txt); mTipTxt2= view.findViewById(R.id.tip_txt2); mCountDownView= view.findViewById(R.id.countdown_view); mCountDownView.setCountDownListener(this); mCountDownView.startCountDown(); startAnimation(); } private void startAnimation(){ AnimatorSet animatorSet=new AnimatorSet(); ObjectAnimator cloudImage1Anim=ObjectAnimator.ofFloat(mPairImage1,"translationX",-100f,0f); cloudImage1Anim.setRepeatMode(ValueAnimator.RESTART); cloudImage1Anim.setRepeatCount(ValueAnimator.INFINITE); ObjectAnimator cloudImage2Anim=ObjectAnimator.ofFloat(mPairImage2,"translationX",100f,0f); cloudImage2Anim.setRepeatMode(ValueAnimator.RESTART); cloudImage2Anim.setRepeatCount(ValueAnimator.INFINITE); animatorSet.play(cloudImage1Anim).with(cloudImage2Anim); animatorSet.setDuration(1500); animatorSet.start(); } @Override protected void initData() { mPresenter=new ApPairPresenter(this); mPresenter.pair(); } @Override public void onDestroyView() { super.onDestroyView(); mCountDownView.stopCountDown(); } @Override public void countDownFinished() { mPresenter.stopPair(); goErrorTipPage(); } @Override public void middleTimeUp() { } @Override public void goErrorTipPage() { PageNavigationHelper.gotoErrorTipPage(this, DeviceAddHelper.ErrorCode.AP_ERROR_PAIR_TIMEOUT); } @Override public void goApBindSuccessPage(AddApResult addApResult) { mPresenter.stopPair(); PageNavigationHelper.gotoApBindSuccessPage(this,addApResult); } }