Przeglądaj źródła

修改微信绑定

liujiangyao 8 lat temu
rodzic
commit
1647f458b7

+ 23 - 19
app/src/main/java/com/sheep/gamegroup/model/util/SheepSubscriber.java

@@ -48,26 +48,30 @@ public abstract class SheepSubscriber<T> extends Subscriber<T> {
         Log.e("tag","MySubscriber.throwable ="+e.toString());
         Log.e("tag","MySubscriber.throwable ="+e.getMessage());
 
-        if(e instanceof Exception){
-            //访问获得对应的Exception
-            ExceptionHandle.ResponeThrowable throwable = ExceptionHandle.handleException(e);
-            /**
-             * token 过期
-             */
-            if(throwable.code == 401){
-                SpUtils.login(SheepApp.mContext,"");
-                G.showToast("请重新登录");
-                ActivityManager.getInstance().finishAllActivity();
-                Jump2View.getInstance().goLoginView(SheepApp.mContext, null);
-                return;
+        try{
+            if(e instanceof Exception){
+                //访问获得对应的Exception
+                ExceptionHandle.ResponeThrowable throwable = ExceptionHandle.handleException(e);
+                /**
+                 * token 过期
+                 */
+                if(throwable.code == 401){
+                    SpUtils.login(SheepApp.mContext,"");
+                    G.showToast("请重新登录");
+                    ActivityManager.getInstance().finishAllActivity();
+                    Jump2View.getInstance().goLoginView(SheepApp.mContext, null);
+                    return;
+                }
+                BaseMessage baseMessage = JSONObject.parseObject(throwable.message, BaseMessage.class);
+                if(baseMessage.getCode() == 0)
+                    baseMessage.setCode(throwable.code);
+                onError(baseMessage);
+            }else {
+                //将Throwable 和 未知错误的status code返回
+                onError(new ExceptionHandle.ResponeThrowable(e,ExceptionHandle.ERROR.UNKNOWN));
             }
-            BaseMessage baseMessage = JSONObject.parseObject(throwable.message, BaseMessage.class);
-            if(baseMessage.getCode() == 0)
-                baseMessage.setCode(throwable.code);
-            onError(baseMessage);
-        }else {
-            //将Throwable 和 未知错误的status code返回
-            onError(new ExceptionHandle.ResponeThrowable(e,ExceptionHandle.ERROR.UNKNOWN));
+        }catch (Exception er){
+            er.printStackTrace();
         }
     }
 

+ 3 - 3
app/src/main/java/com/sheep/gamegroup/presenter/TaskDialogContract.java

@@ -11,12 +11,12 @@ public interface TaskDialogContract {
 
     interface Presenter{
         void acceptedTask(JSONObject o);
-        void getTaskState(JSONObject o);
+        void getTaskState(int o);
     }
     interface View{
         void startTaskUpdataView(Object o);
         void startTaskFailView(Object o);
-        void withdrawalUpdataView(Object o);
-        void  withdrawalFailView(Object o);
+        void getStateSuccess(Object o);
+        void  getStatefail(Object o);
     }
 }

+ 16 - 1
app/src/main/java/com/sheep/gamegroup/presenter/TaskDialogPresenter.java

@@ -47,7 +47,22 @@ public class TaskDialogPresenter implements TaskDialogContract.Presenter {
     }
 
     @Override
-    public void getTaskState(JSONObject o) {
+    public void getTaskState(int o) {
+
+        apiService.giveTaskStatue(o)
+                .subscribeOn(Schedulers.io())
+                .observeOn(AndroidSchedulers.mainThread())
+                .subscribe(new SheepSubscriber<BaseMessage>(SheepApp.mContext) {
+                    @Override
+                    public void onError(BaseMessage baseMessage) {
+                        view.getStatefail(baseMessage);
+                    }
+
+                    @Override
+                    public void onNext(BaseMessage baseMessage) {
+                        view.getStateSuccess(baseMessage);
+                    }
+                });
 
     }
 }

+ 3 - 1
app/src/main/java/com/sheep/gamegroup/presenter/TryMakeMoneyPresenter.java

@@ -10,6 +10,7 @@ import com.sheep.jiuyan.samllsheep.SheepApp;
 
 import javax.inject.Inject;
 
+import rx.Scheduler;
 import rx.android.schedulers.AndroidSchedulers;
 import rx.schedulers.Schedulers;
 
@@ -36,6 +37,7 @@ public class TryMakeMoneyPresenter implements TryMakeMoneyContract.Presenter {
     public void acceptedTask(RequestParameEty o) {
         apiService.acceptedTask(o.getPage(), o.getPer_page())
                 .subscribeOn(Schedulers.io())
+                .observeOn(AndroidSchedulers.mainThread())
                 .subscribe(new SheepSubscriber<BaseMessage>(SheepApp.mContext) {
                     @Override
                     public void onError(BaseMessage baseMessage) {
@@ -94,7 +96,7 @@ public class TryMakeMoneyPresenter implements TryMakeMoneyContract.Presenter {
     @Override
     public void giveUpTask(int id) {
         apiService.giveUpTask(id)
-                .observeOn(AndroidSchedulers.mainThread())
+                .subscribeOn(Schedulers.io())
                 .observeOn(AndroidSchedulers.mainThread())
                 .subscribe(new SheepSubscriber<BaseMessage>(SheepApp.mContext) {
                     @Override

+ 29 - 0
app/src/main/java/com/sheep/gamegroup/util/MyDbManager.java

@@ -1,7 +1,9 @@
 package com.sheep.gamegroup.util;
 
 import com.sheep.gamegroup.model.entity.UserEntity;
+import com.sheep.jiuyan.samllsheep.download.DownloadInfo;
 
+import org.wlf.filedownloader.file_download.http_downloader.Download;
 import org.xutils.DbManager;
 import org.xutils.ex.DbException;
 import org.xutils.x;
@@ -52,4 +54,31 @@ public class MyDbManager {
         }
         return userEntity;
     }
+
+    /**
+     * 查找指定表
+     */
+    public UserEntity dbFindUsers() throws DbException{
+        UserEntity users = db.findFirst(UserEntity.class);
+        if(users == null ){
+            users = new UserEntity();
+        }
+        return users;
+    }
+
+    /**
+     * 获取下载数据
+     */
+    public DownloadInfo dbFindDownLoad(String taskName, String filePath) {
+        DownloadInfo downloadInfo = null;
+        try{
+            downloadInfo = db.selector(DownloadInfo.class)
+                    .where("label", "=", taskName)
+                    .and("fileSavePath", "=", filePath)
+                    .findFirst();
+        }catch (Exception e){
+            e.printStackTrace();
+        }
+        return downloadInfo;
+    }
 }

+ 27 - 2
app/src/main/java/com/sheep/gamegroup/view/activity/BindOrChangeWeixinAct.java

@@ -7,15 +7,24 @@ import android.view.View;
 import android.widget.TextView;
 
 import com.alibaba.fastjson.JSONObject;
+import com.kfzs.duanduan.event.BigEvent;
+import com.kfzs.duanduan.event.EventTypes;
 import com.sheep.gamegroup.di.components.DaggerBindOrChangeWeixinComponent;
 import com.sheep.gamegroup.di.modules.BindOrChangeWeixinModule;
+import com.sheep.gamegroup.model.entity.UserEntity;
 import com.sheep.gamegroup.presenter.BindOrChangeWeixinContract;
 import com.sheep.gamegroup.presenter.BindOrChangeWeixinPresenter;
+import com.sheep.gamegroup.util.Jump2View;
+import com.sheep.gamegroup.util.MyDbManager;
 import com.sheep.jiuyan.samllsheep.R;
 import com.sheep.jiuyan.samllsheep.SheepApp;
 import com.sheep.jiuyan.samllsheep.base.BaseActivity;
+import com.sheep.jiuyan.samllsheep.utils.G;
 import com.sheep.jiuyan.samllsheep.utils.TitleBarUtils;
 
+import org.greenrobot.eventbus.EventBus;
+import org.xutils.ex.DbException;
+
 import javax.inject.Inject;
 
 import butterknife.BindView;
@@ -38,6 +47,8 @@ public class BindOrChangeWeixinAct extends BaseActivity implements BindOrChangeW
     BindOrChangeWeixinPresenter presenter;
 
     private String code;
+    private boolean isBindOrChange;
+    private String isBindOrChangeStr;
 
 
     @Override
@@ -48,10 +59,15 @@ public class BindOrChangeWeixinAct extends BaseActivity implements BindOrChangeW
     @Override
     public void initView() {
         activity = this;
-
+        isBindOrChange = getIntent().getBooleanExtra("type", false);
+        if(isBindOrChange){
+            isBindOrChangeStr = "更换微信号";
+        }else {
+            isBindOrChangeStr = "绑定微信号";
+        }
         TitleBarUtils
                 .getInstance()
-                .setTitle(activity, "更换微信号")
+                .setTitle(activity, "绑定微信号")
                 .setTitleFinish(activity);
         DaggerBindOrChangeWeixinComponent.builder()
                 .netComponent(SheepApp.get(this).getNetComponent())
@@ -97,6 +113,15 @@ public class BindOrChangeWeixinAct extends BaseActivity implements BindOrChangeW
     @Override
     public void updateView(Object o) {
         hideProgress();
+        G.showToast("提交成功");
+        try {
+            UserEntity userEntity = MyDbManager.getInstance().dbFindUser();
+            userEntity.setWx_openid("succes");
+            MyDbManager.getInstance().saveOrUpdateUser(userEntity);
+        } catch (DbException e) {
+            e.printStackTrace();
+        }
+        EventBus.getDefault().post(new BigEvent().setEventTypes(EventTypes.ONFRESH_FGT_FAMLLSHEEP));
     }
 
     @Override

+ 99 - 38
app/src/main/java/com/sheep/gamegroup/view/activity/DialogActivity.java

@@ -33,19 +33,27 @@ import com.sheep.gamegroup.model.entity.TaskEty;
 import com.sheep.gamegroup.presenter.TaskDialogContract;
 import com.sheep.gamegroup.presenter.TaskDialogPresenter;
 import com.sheep.gamegroup.util.Jump2View;
+import com.sheep.gamegroup.util.MyDbManager;
 import com.sheep.gamegroup.view.customview.SProgress;
 import com.sheep.jiuyan.samllsheep.R;
 import com.sheep.jiuyan.samllsheep.SheepApp;
+import com.sheep.jiuyan.samllsheep.adapter.DownListAdapter;
 import com.sheep.jiuyan.samllsheep.base.BaseActivity;
 import com.sheep.jiuyan.samllsheep.download.DownloadInfo;
 import com.sheep.jiuyan.samllsheep.download.DownloadManager;
 import com.sheep.jiuyan.samllsheep.download.DownloadState;
+import com.sheep.jiuyan.samllsheep.download.DownloadViewHolder;
 import com.sheep.jiuyan.samllsheep.utils.ClassFileHelper;
 import com.sheep.jiuyan.samllsheep.utils.G;
 import com.sheep.jiuyan.samllsheep.utils.PackageUtil;
 
 
+import org.xutils.HttpManager;
+import org.xutils.common.Callback;
+import org.xutils.common.task.PriorityExecutor;
 import org.xutils.ex.DbException;
+import org.xutils.http.HttpMethod;
+import org.xutils.http.RequestParams;
 import org.xutils.x;
 
 import java.io.File;
@@ -87,7 +95,10 @@ public class DialogActivity extends Activity implements TaskDialogContract.View
     private boolean isDownLoad = false;//是否下载
     private String buttonStr = "开始任务";//是否下载
     private Activity activity;
-
+    /**
+     * 下载
+     */
+    private Callback.Cancelable cancelable;
 
     @Inject
     TaskDialogPresenter preference;
@@ -111,6 +122,7 @@ public class DialogActivity extends Activity implements TaskDialogContract.View
         setContentView(R.layout.download_item_dialog);
         ButterKnife.bind(this);
         activity = this;
+        x.view().inject(this);
         initViews();
         initDatas();
     }
@@ -126,8 +138,11 @@ public class DialogActivity extends Activity implements TaskDialogContract.View
         dialogItemNameTv.setText(task_entity.getTask_name());
         dialogItemSizeTv.setText( task_entity.getPackage_size() + "M");
         isDownLoad = PackageUtil.isAppInstalled(SheepApp.mContext, task_entity.getPackage_names());
-        //Todo 找不到接口,明天继续
-        preference.getTaskState(null);
+        //Todo ok
+        JSONObject jsonObject = new JSONObject();
+        jsonObject.put("id",task_entity.getRelease_task_id());
+        preference.getTaskState(task_entity.getRelease_task_id());
+
     }
 
     private void initViews() {
@@ -181,6 +196,70 @@ public class DialogActivity extends Activity implements TaskDialogContract.View
             }
 
         });
+        /**
+         * 下载
+         */
+        ClassFileHelper.getInstance().createSDDirection();
+        File mApkPath = new File(ClassFileHelper.DIR, task_entity.getTask_name() + ClassFileHelper.FILE_SUFFIX);
+        if (!mApkPath.exists()) {
+            try {
+                downloadInfo = DownloadManager.getInstance().startDownloadOne(task_entity.getPackage_names(),
+                        task_entity.getDownload_link(), task_entity.getTask_name(),
+                        mApkPath.getAbsolutePath(), task_entity.getIcon(), true, false, null);
+//                    new DownloadItemViewHolder(null, downloadInfo);
+                startStaskSprogress.setProgress(downloadInfo.getProgress());
+            } catch (DbException e) {
+                e.printStackTrace();
+            }
+        } else {
+            PackageUtil.installApk(getApplicationContext(), mApkPath.getAbsolutePath());
+        }
+        String fileSavePath = new File(mApkPath.getAbsolutePath()).getAbsolutePath();
+        DownloadInfo downloadInfo = MyDbManager.getInstance().dbFindDownLoad(task_entity.getTask_name(), mApkPath.getAbsolutePath());
+        //设置请求参数
+        RequestParams params = new RequestParams(task_entity.getDownload_link());
+        params.setAutoResume(true);//设置是否在下载是自动断点续传
+        params.setAutoRename(false);//设置是否根据头信息自动命名文件
+        params.setSaveFilePath("/sdcard/xutils/xUtils_1.avi");
+        params.setExecutor(new PriorityExecutor(2, true));//自定义线程池,有效的值范围[1, 3], 设置为3时, 可能阻塞图片加载.
+        params.setCancelFast(true);//是否可以被立即停止.
+        cancelable = x.http().get(params, new Callback.ProgressCallback<File>(){
+
+            @Override
+            public void onSuccess(File file) {
+
+            }
+
+            @Override
+            public void onError(Throwable throwable, boolean b) {
+
+            }
+
+            @Override
+            public void onCancelled(CancelledException e) {
+
+            }
+
+            @Override
+            public void onFinished() {
+
+            }
+
+            @Override
+            public void onWaiting() {
+
+            }
+
+            @Override
+            public void onStarted() {
+
+            }
+
+            @Override
+            public void onLoading(long l, long l1, boolean b) {
+
+            }
+        });
     }
 
     @OnClick({R.id.doalog_item_get_rewards_tv, R.id.dialog_item_x, R.id.start_task_tv, R.id.start_stask_sprogress})
@@ -198,38 +277,18 @@ public class DialogActivity extends Activity implements TaskDialogContract.View
                 startStask();
                 break;
             case R.id.start_stask_sprogress:
-                DownloadState state = downloadInfo.getState();
-                switch (state) {
-                    case WAITING:
-                    case STARTED:
-                        downloadManager.stopDownload(downloadInfo);
-                        break;
-                    case ERROR:
-                    case STOPPED:
-                        try {
-                            downloadManager.startDownload(
-                                    downloadInfo.getPkgName(),
-                                    downloadInfo.getUrl(),
-                                    downloadInfo.getLabel(),
-                                    downloadInfo.getFileSavePath(), "",
-                                    downloadInfo.isAutoResume(),
-                                    downloadInfo.isAutoRename(),
-                                    null);
-                        } catch (DbException ex) {
-                            Toast.makeText(x.app(), "添加下载失败", Toast.LENGTH_LONG).show();
-                        }
-                        break;
-                    case FINISHED:
-                        Toast.makeText(x.app(), "已经下载完成", Toast.LENGTH_LONG).show();
-                        if(PackageUtil.isAppInstalled(activity, downloadInfo.getPkgName())){
-                            PackageUtil.startApp(SheepApp.mContext, downloadInfo.getPkgName());
-                        }else{
-                            PackageUtil.installApk(activity, downloadInfo.getFileSavePath());
-                        }
-
-                        break;
-                    default:
-                        break;
+//                refresh();
+                try {
+                    downloadManager.startDownload(
+                            downloadInfo.getPkgName(),
+                            downloadInfo.getUrl(),
+                            downloadInfo.getLabel(),
+                            downloadInfo.getFileSavePath(), "",
+                            downloadInfo.isAutoResume(),
+                            downloadInfo.isAutoRename(),
+                            null);
+                } catch (DbException ex) {
+                    Toast.makeText(x.app(), "添加下载失败", Toast.LENGTH_LONG).show();
                 }
                 break;
         }
@@ -264,7 +323,7 @@ public class DialogActivity extends Activity implements TaskDialogContract.View
      */
     private void downLoadApk(){
 
-        start_task_tv.setVisibility(View.GONE);
+        start_task_tv.setVisibility(View.VISIBLE);
         startStaskSprogress.setVisibility(View.VISIBLE);
         if (task_entity != null) {
             ClassFileHelper.getInstance().createSDDirection();
@@ -274,6 +333,7 @@ public class DialogActivity extends Activity implements TaskDialogContract.View
                     downloadInfo = DownloadManager.getInstance().startDownloadOne(task_entity.getPackage_names(),
                             task_entity.getDownload_link(), task_entity.getTask_name(),
                             mApkPath.getAbsolutePath(), task_entity.getIcon(), true, false, null);
+//                    new DownloadItemViewHolder(null, downloadInfo);
                     startStaskSprogress.setProgress(downloadInfo.getProgress());
                 } catch (DbException e) {
                     e.printStackTrace();
@@ -335,12 +395,13 @@ public class DialogActivity extends Activity implements TaskDialogContract.View
     }
 
     @Override
-    public void withdrawalUpdataView(Object o) {
+    public void getStateSuccess(Object o) {
 
     }
 
     @Override
-    public void withdrawalFailView(Object o) {
+    public void getStatefail(Object o) {
 
     }
+
 }

+ 3 - 1
app/src/main/java/com/sheep/gamegroup/view/activity/TryMakeMoneyact.java

@@ -154,7 +154,7 @@ public class TryMakeMoneyact extends BaseActivity implements TryMakeMoneyContrac
 
     @Override
     public void giveUpTaskSuccesView(Object o) {
-        G.showToast("取消成功失败");
+        G.showToast("取消任务成功");
         initData();
     }
 
@@ -173,6 +173,7 @@ public class TryMakeMoneyact extends BaseActivity implements TryMakeMoneyContrac
             tryMakeMoneyAdp.add(RecyleObj.make(RecyleType.RUN_TASK, taskAcceptedEty),0);
             tryMakeMoneyAdp.addPresenter(presenter);
             tryMakeMoneyAdp.addHaveTask(true);
+            tryMakeMoneyAdp.notifyItemChanged(0);
             mhandler.sendEmptyMessage(0);
         }catch (Exception e){
             e.printStackTrace();
@@ -210,6 +211,7 @@ public class TryMakeMoneyact extends BaseActivity implements TryMakeMoneyContrac
             List<TaskReleaseEty> releaseEtyList = JSONArray.parseArray(JSONArray.toJSONString(baseMessage.getData()), TaskReleaseEty.class);
 
             tryMakeMoneyAdp.add(RecyleObj.make(RecyleType.RELEASE_TASK, releaseEtyList),1);
+            tryMakeMoneyAdp.notifyItemChanged(1);
             mhandler.sendEmptyMessage(0);
         }catch (Exception e){
             e.printStackTrace();

+ 15 - 15
app/src/main/java/com/sheep/gamegroup/view/adapter/TryMakeMoneyAdp.java

@@ -115,19 +115,6 @@ public class TryMakeMoneyAdp extends AdpCommonRecy<RecyleObj> {
             public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup viewGroup, int i) {
                 LinearLayout view = (LinearLayout) LayoutInflater.from(context)
                         .inflate(R.layout.try_makemoney_item_recommend, viewGroup,false);
-                view.setOnClickListener(new View.OnClickListener() {
-                    @Override
-                    public void onClick(View v) {
-                        if(isHave){
-                            G.showToast("请先取消已接受的任务");
-                            return;
-                        }
-                        TaskEty taskEty = etyList.get(i).getTask();
-                        taskEty.setRunTask(0);
-                        taskEty.setRelease_task_id(etyList.get(i).getId());
-                        Jump2View.getInstance().goDialogActivityView(context, taskEty);
-                    }
-                });
                 RecyclerView.ViewHolder viewHolder = new RecyclerView.ViewHolder(view) {
                     @Override
                     public String toString() {
@@ -149,13 +136,26 @@ public class TryMakeMoneyAdp extends AdpCommonRecy<RecyleObj> {
 
                     viewHolder.itemView.findViewById(R.id.item_title_tv).setVisibility(View.GONE);
                 }
-                ((TextView)viewHolder.itemView.findViewById(R.id.item_anem_tv)).setText(etyList.get(i).getTask().getTask_name()+"");
+                ((TextView)viewHolder.itemView.findViewById(R.id.item_anem_tv)).setText(etyList.get(i).getName()+"");
                 ((TextView)viewHolder.itemView.findViewById(R.id.item_num_tv)).setText("剩余"+ etyList.get(i).getLast_num()+"份");
                 ((TextView)viewHolder.itemView.findViewById(R.id.item_money)).setText("+"+ etyList.get(i).getBonus() +"元");
                 Glide.with(context)
                         .load(etyList.get(i).getTask().getIcon()+"")
                         .placeholder(R.mipmap.ic_launcher)
                         .into((ImageView) viewHolder.itemView.findViewById(R.id.item_icon_iv));
+                viewHolder.itemView.setOnClickListener(new View.OnClickListener() {
+                    @Override
+                    public void onClick(View v) {
+                        if(isHave){
+                            G.showToast("请先取消已接受的任务");
+                            return;
+                        }
+                        TaskEty taskEty = etyList.get(i).getTask();
+                        taskEty.setRunTask(0);
+                        taskEty.setRelease_task_id(etyList.get(i).getId());
+                        Jump2View.getInstance().goDialogActivityView(context, taskEty);
+                    }
+                });
 
             }
 
@@ -180,7 +180,7 @@ public class TryMakeMoneyAdp extends AdpCommonRecy<RecyleObj> {
                 .placeholder(R.mipmap.ic_launcher)
                 .dontAnimate()
                 .into(icon);
-        item_anem_tv.setText(acceptedEty.getRelease_task().getTask().getTask_name()+"");
+        item_anem_tv.setText(acceptedEty.getRelease_task().getName()+"");
         item_num_tv.setText("剩余"+ acceptedEty.getRelease_task().getLast_num()+"份");
         item_money.setText("+"+ acceptedEty.getRelease_task().getBonus() +"元");
         cancel_task_tv.setOnClickListener(new View.OnClickListener() {

+ 71 - 0
app/src/main/java/com/sheep/gamegroup/view/download/DownloadCallback.java

@@ -0,0 +1,71 @@
+package com.sheep.gamegroup.view.download;
+
+import android.app.Activity;
+
+import com.sheep.jiuyan.samllsheep.download.DownloadInfo;
+
+import org.xutils.common.Callback;
+
+import java.io.File;
+import java.lang.ref.WeakReference;
+
+/**
+ * Created by ljy on 2018/3/24.
+ */
+
+public class DownloadCallback implements
+        Callback.CommonCallback<File>,
+        Callback.ProgressCallback<File>,
+        Callback.Cancelable  {
+
+
+    private DownloadInfo downloadInfo;
+    private WeakReference<Activity> viewHolderRef;
+//    private DownloadManager downloadManager;
+    private boolean cancelled = false;
+    private Cancelable cancelable;
+    @Override
+    public void cancel() {
+
+    }
+
+    @Override
+    public boolean isCancelled() {
+        return false;
+    }
+
+    @Override
+    public void onWaiting() {
+
+    }
+
+    @Override
+    public void onStarted() {
+
+    }
+
+    @Override
+    public void onLoading(long l, long l1, boolean b) {
+
+    }
+
+    @Override
+    public void onSuccess(File file) {
+
+    }
+
+    @Override
+    public void onError(Throwable throwable, boolean b) {
+
+    }
+
+    @Override
+    public void onCancelled(CancelledException e) {
+
+    }
+
+    @Override
+    public void onFinished() {
+
+    }
+}

+ 6 - 0
app/src/main/java/com/sheep/jiuyan/samllsheep/download/DownloadViewHolder.java

@@ -1,5 +1,6 @@
 package com.sheep.jiuyan.samllsheep.download;
 
+import android.app.Activity;
 import android.view.View;
 
 import org.xutils.common.Callback;
@@ -19,6 +20,11 @@ public abstract class DownloadViewHolder {
         x.view().inject(this, view);
     }
 
+    public DownloadViewHolder(Activity activity, DownloadInfo downloadInfo) {
+        this.downloadInfo = downloadInfo;
+        x.view().inject(activity);
+    }
+
     public final DownloadInfo getDownloadInfo() {
         return downloadInfo;
     }

+ 4 - 2
app/src/main/res/layout/download_item_dialog.xml

@@ -120,7 +120,8 @@
                         android:minHeight="36dp"
                         android:minWidth="151dp"
                         android:text="开始任务"
-                        android:textSize="18sp" />
+                        android:textSize="18sp"
+                        android:textColor="@color/txt_black"/>
                 </LinearLayout>
 
                 <TextView
@@ -137,7 +138,8 @@
                     android:minHeight="36dp"
                     android:minWidth="151dp"
                     android:text="领取奖励"
-                    android:textSize="18sp" />
+                    android:textSize="18sp"
+                    android:textColor="@color/txt_black" />
 
             </RelativeLayout>