version:1.1
fix: update:迁移到UIUISOS
This commit is contained in:
@@ -0,0 +1,102 @@
|
||||
package com.uiuios.aios.activity.code;
|
||||
|
||||
import android.graphics.Color;
|
||||
import android.view.View;
|
||||
import android.widget.ImageView;
|
||||
|
||||
import androidx.viewpager.widget.ViewPager;
|
||||
|
||||
import com.bumptech.glide.Glide;
|
||||
import com.uiuios.aios.R;
|
||||
import com.uiuios.aios.adapter.HealthCodeAdapter;
|
||||
import com.uiuios.aios.base.BaseActivity;
|
||||
import com.uiuios.aios.bean.HealthCode;
|
||||
import com.uiuios.aios.utils.ToastUtil;
|
||||
import com.uiuios.aios.view.ScaleCircleNavigator;
|
||||
|
||||
import net.lucode.hackware.magicindicator.MagicIndicator;
|
||||
import net.lucode.hackware.magicindicator.ViewPagerHelper;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import butterknife.BindView;
|
||||
import butterknife.ButterKnife;
|
||||
|
||||
public class HealthCodeActivity extends BaseActivity implements HealthCodeContact.CodeView {
|
||||
@BindView(R.id.viewPager)
|
||||
ViewPager mViewPager;
|
||||
@BindView(R.id.magicIndicator)
|
||||
MagicIndicator mMagicIndicator;
|
||||
@BindView(R.id.iv_nodata)
|
||||
ImageView iv_nodata;
|
||||
|
||||
private HealthCodePresenter mPresenter;
|
||||
private HealthCodeAdapter mHealthCodeAdapter;
|
||||
private ScaleCircleNavigator scaleCircleNavigator;
|
||||
|
||||
@Override
|
||||
public int getLayoutId() {
|
||||
return R.layout.activity_code;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void initView() {
|
||||
ButterKnife.bind(this);
|
||||
mPresenter = new HealthCodePresenter(this);
|
||||
mPresenter.attachView(this);
|
||||
mPresenter.setLifecycle(lifecycleSubject);
|
||||
mHealthCodeAdapter = new HealthCodeAdapter();
|
||||
mViewPager.setAdapter(mHealthCodeAdapter);
|
||||
scaleCircleNavigator = new ScaleCircleNavigator(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void initData() {
|
||||
mPresenter.getHealthCode();
|
||||
}
|
||||
|
||||
private void setImageViews(List<HealthCode> healthCodes) {
|
||||
mMagicIndicator.setNavigator(scaleCircleNavigator);
|
||||
scaleCircleNavigator.setCircleCount(healthCodes.size());
|
||||
scaleCircleNavigator.setNormalCircleColor(Color.DKGRAY);
|
||||
scaleCircleNavigator.setSelectedCircleColor(Color.LTGRAY);
|
||||
scaleCircleNavigator.setCircleClickListener(new ScaleCircleNavigator.OnCircleClickListener() {
|
||||
@Override
|
||||
public void onClick(int index) {
|
||||
|
||||
}
|
||||
});
|
||||
ViewPagerHelper.bind(mMagicIndicator, mViewPager);
|
||||
List<ImageView> imageViews = new ArrayList<>();
|
||||
for (HealthCode healthCode : healthCodes) {
|
||||
ImageView image = new ImageView(this);
|
||||
image.setAdjustViewBounds(true);
|
||||
image.setScaleType(ImageView.ScaleType.FIT_CENTER);
|
||||
Glide.with(this).load(healthCode.getImg()).into(image);
|
||||
imageViews.add(image);
|
||||
}
|
||||
mHealthCodeAdapter.setImageViews(imageViews);
|
||||
mHealthCodeAdapter.notifyDataSetChanged();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setHealthCode(List<HealthCode> codeList) {
|
||||
setImageViews(codeList);
|
||||
mViewPager.setVisibility(View.VISIBLE);
|
||||
mMagicIndicator.setVisibility(View.VISIBLE);
|
||||
iv_nodata.setVisibility(View.GONE);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setHealthCodeNodata() {
|
||||
mViewPager.setVisibility(View.GONE);
|
||||
mMagicIndicator.setVisibility(View.GONE);
|
||||
iv_nodata.setVisibility(View.VISIBLE);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onError() {
|
||||
ToastUtil.show("连接服务器失败,请检查网络连接");
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,19 @@
|
||||
package com.uiuios.aios.activity.code;
|
||||
|
||||
import com.uiuios.aios.base.BasePresenter;
|
||||
import com.uiuios.aios.base.BaseView;
|
||||
import com.uiuios.aios.bean.HealthCode;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class HealthCodeContact {
|
||||
public interface Presenter extends BasePresenter<CodeView> {
|
||||
void getHealthCode();
|
||||
}
|
||||
|
||||
public interface CodeView extends BaseView {
|
||||
void setHealthCode(List<HealthCode> codeList);
|
||||
void setHealthCodeNodata();
|
||||
void onError();
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,68 @@
|
||||
package com.uiuios.aios.activity.code;
|
||||
|
||||
import android.content.Context;
|
||||
import android.util.Log;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
|
||||
import com.trello.rxlifecycle4.android.ActivityEvent;
|
||||
import com.uiuios.aios.bean.HealthCode;
|
||||
import com.uiuios.aios.network.NetInterfaceManager;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import io.reactivex.rxjava3.subjects.BehaviorSubject;
|
||||
|
||||
public class HealthCodePresenter implements HealthCodeContact.Presenter {
|
||||
private static final String TAG = HealthCodePresenter.class.getSimpleName();
|
||||
private HealthCodeContact.CodeView mView;
|
||||
|
||||
private Context mContext;
|
||||
|
||||
private BehaviorSubject<ActivityEvent> lifecycle;
|
||||
|
||||
void setLifecycle(BehaviorSubject<ActivityEvent> lifecycle) {
|
||||
this.lifecycle = lifecycle;
|
||||
}
|
||||
|
||||
public BehaviorSubject<ActivityEvent> getLifecycle() {
|
||||
return lifecycle;
|
||||
}
|
||||
|
||||
HealthCodePresenter(Context context) {
|
||||
this.mContext = context;
|
||||
Log.e(TAG, "MainPresenter: " + context.getClass());
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public void attachView(@NonNull HealthCodeContact.CodeView view) {
|
||||
this.mView = view;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void detachView() {
|
||||
this.mView = null;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public void getHealthCode() {
|
||||
NetInterfaceManager.getInstance().getHealthCode(true, getLifecycle(), new NetInterfaceManager.HealthCodeCallback() {
|
||||
@Override
|
||||
public void setHealthCode(List<HealthCode> healthCode) {
|
||||
mView.setHealthCode(healthCode);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void noData() {
|
||||
mView.setHealthCodeNodata();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onError() {
|
||||
mView.onError();
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user