属性动画详情和购物车加订单

依赖
 
 
compile 'com.youth.banner:banner:1.1.5'
compile 'com.google.code.gson:gson:2.8.2'
compile 'com.squareup.okhttp3:okhttp:3.6.0'
compile 'com.squareup.okio:okio:1.11.0'
compile 'com.github.bumptech.glide:glide:3.7.0'
compile 'com.scwang.smartrefresh:SmartRefreshLayout:1.0.4-7'
implementation 'com.android.support:recyclerview-v7:26.1.0'
//Okhttp3Util封装参考http://blog.csdn.net/wei844067872/article/details/78778372无拦截器
//Okhttp3Util封装加拦截器参考http://blog.csdn.net/wei844067872/article/details/79059394
//属性动画
public class MainActivity extends AppCompatActivity {
    private ImageView image_btn;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        image_btn = findViewById(R.id.image_btn);
        DisplayMetrics displayMetrics = new DisplayMetrics();
        getWindowManager().getDefaultDisplay().getMetrics(displayMetrics);
        int heightPixels = displayMetrics.heightPixels;

        ObjectAnimator y = ObjectAnimator.ofFloat(image_btn, "Y",(heightPixels-image_btn.getHeight())/2);
        ObjectAnimator rotation = ObjectAnimator.ofFloat(image_btn, "rotation", 0f, 360f);
        ObjectAnimator alpha = ObjectAnimator.ofFloat(image_btn, "alpha", 0f, 1f);
        ObjectAnimator y1 = ObjectAnimator.ofFloat(image_btn,"scaleY", 2f, 1f);
        ObjectAnimator x = ObjectAnimator.ofFloat(image_btn, "scaleX", 2f, 1f);
        AnimatorSet animatorSet = new AnimatorSet();
        animatorSet.play(y).with(rotation).with(alpha).with(y1).with(x);
        animatorSet.setDuration(3000);
        animatorSet.start();
        animatorSet.addListener(new AnimatorListenerAdapter() {
            @Override
            public void onAnimationCancel(Animator animation) {
                super.onAnimationCancel(animation);
            }

            @Override
            public void onAnimationEnd(Animator animation) {
                super.onAnimationEnd(animation);
                Intent intent = new Intent(MainActivity.this, MyShangPingXiangQingActivity.class);
                startActivity(intent);
                finish();

            }

            @Override
            public void onAnimationRepeat(Animator animation) {
                super.onAnimationRepeat(animation);
            }

            @Override
            public void onAnimationStart(Animator animation) {
                super.onAnimationStart(animation);
            }
        });
    }
}
//属性动画布局是一张图片
 
 
<ImageView
    android:id="@+id/image_btn"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_centerHorizontal="true"
    android:background="@mipmap/ic_launcher_round"/>
 
 
//view层
public interface MainXiangQing {
    void getXiangQingBean(MyXiangQingBean myXiangQingBean);
}
//商品详情
 
 
public class MyShangPingXiangQingActivity extends AppCompatActivity implements MainXiangQing, View.OnClickListener,MainMyJiaRu {

    private ImageView image_fanhui;
    private Banner banner;
    private TextView text_title;
    private TextView text_yuanjia;
    private TextView text_xianjia;
    private Button btn_gouwuche;
    private Button btn_jiaru;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_my_shang_ping_xiang_qing);
        image_fanhui = findViewById(R.id.image_fanhui);
        banner = findViewById(R.id.Mybanner);
        text_title = findViewById(R.id.text_title);
        text_yuanjia = findViewById(R.id.text_yuanjia);
        text_xianjia = findViewById(R.id.text_xianjia);
        btn_gouwuche = findViewById(R.id.btn_gouwuche);
        btn_jiaru = findViewById(R.id.btn_jiaru);

        PresenterXiangQing presenterXiangQing = new PresenterXiangQing(this);
        presenterXiangQing.getXiangQingUrl(ApiUrl.xiangqing);
        btn_gouwuche.setOnClickListener(this);
        btn_jiaru.setOnClickListener(this);
    }

    @Override
    public void getXiangQingBean(final MyXiangQingBean myXiangQingBean) {
        runOnUiThread(new Runnable() {
            @Override
            public void run() {
                ArrayList<String> list = new ArrayList<>();
                MyXiangQingBean.DataBean data = myXiangQingBean.getData();
                String images = data.getImages();
                String[] split = images.split("\\|");
                for (int i=0;i<split.length;i++){
                    list.add(split[i]);
                }
                banner.setBannerStyle(Banner.AUTOFILL_TYPE_LIST);//设置图片的样式
                banner.setIndicatorGravity(Banner.CENTER); //设置指示器位置
                banner.setDelayTime(2000);//间隔时间
                banner.isAutoPlay(true);//设置自动轮播
                banner.setImages(list);

                text_title.setText(data.getTitle());
                text_yuanjia.setText("原价:"+data.getPrice());
                text_xianjia.setText("优惠价:"+data.getBargainPrice());

            }
        });
    }

    @Override
    public void onClick(View v) {
        switch (v.getId()){
            case R.id.btn_gouwuche:
                Intent intent = new Intent(MyShangPingXiangQingActivity.this, MyGouWuCheActivity.class);
                startActivity(intent);
                break;
            case R.id.btn_jiaru:
                PresenterJiaRu presenterJiaRu = new PresenterJiaRu(this);
                presenterJiaRu.getJiaRuUrl(ApiUrl.jiaru);

                break;
        }
    }

    @Override
    public void getJiaRuBean(final MyJiaRuBean myJiaRuBean) {
        runOnUiThread(new Runnable() {
            @Override
            public void run() {
                if (myJiaRuBean!=null){
                   // Log.d("++++++++++++",myJiaRuBean.getMsg());
                    String code = myJiaRuBean.getCode();
                    if (code.equals("0")){
                        Toast.makeText(MyShangPingXiangQingActivity.this,myJiaRuBean.getMsg(),Toast.LENGTH_LONG).show();
                    }else {
                        Toast.makeText(MyShangPingXiangQingActivity.this,myJiaRuBean.getMsg(),Toast.LENGTH_LONG).show();
                    }

                }
            }
        });
    }
}
 
 //presenter层 接口 
 
public interface PresenterXiangQingPort {
    void getXiangQingBean(MyXiangQingBean myXiangQingBean);
}
/* presenter层实体类 这里方法报错别管先把model层粘上,如果还报错再改 */
 
 
public class PresenterXiangQing implements PresenterXiangQingPort{

    private MainXiangQing mainXiangQing;
    private final ModelXiangQing modelXiangQing;

    public PresenterXiangQing(MainXiangQing mainXiangQing) {
        modelXiangQing = new ModelXiangQing(this);
        this.mainXiangQing = mainXiangQing;
    }

    public void getXiangQingUrl(String xiangqing) {
        modelXiangQing.getXiangQingUrl(xiangqing);
    }

    @Override
    public void getXiangQingBean(MyXiangQingBean myXiangQingBean) {
        mainXiangQing.getXiangQingBean(myXiangQingBean);
    }
}
//model层
 
 
public class ModelXiangQing {

    private PresenterXiangQing presenterXiangQing;

    public ModelXiangQing(PresenterXiangQing presenterXiangQing) {

        this.presenterXiangQing = presenterXiangQing;
    }

    public void getXiangQingUrl(String xiangqing) {
        Map<String, String> params=new HashMap<>();
        params.put("pid","56");
        OkHttp3Util.doPost(xiangqing, params, new Callback() {
            @Override
            public void onFailure(Call call, IOException e) {

            }

            @Override
            public void onResponse(Call call, Response response) throws IOException {
                if (response.isSuccessful()){
                    String json = response.body().string();
                    MyXiangQingBean myXiangQingBean = new Gson().fromJson(json, MyXiangQingBean.class);
                    presenterXiangQing.getXiangQingBean(myXiangQingBean);
                }
            }
        });
    }
}
//购物车地址参考http://blog.csdn.net/wei844067872/article/details/79083627
 
 
 
 
 
 
 
发布了21 篇原创文章 · 获赞 8 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/wei844067872/article/details/79083208