Bläddra i källkod

红包动画效果

zhaoyi 8 år sedan
förälder
incheckning
a8b04bf8da

+ 1 - 1
app/src/main/AndroidManifest.xml

@@ -27,7 +27,7 @@
     <application
         android:name=".SheepApp"
         android:allowBackup="true"
-        android:icon="@drawable/icon_app"
+        android:icon="@drawable/icon"
         android:supportsRtl="true"
         android:theme="@style/AppTheme">
 

+ 1 - 0
app/src/main/java/com/sheep/jiuyan/samllsheep/Config.java

@@ -15,6 +15,7 @@ public class Config {
         return mConfig;
     }
 
+//        public String mBaseUrl = "http://10.8.220.132:8088";
         public String mBaseUrl = "http://10.8.220.213:8088";
 //    public String mBaseUrl = "http://10.8.220.130:8088";
     //    public String mBaseUrl = "http://api.task.bandaimi.com";

+ 5 - 1
app/src/main/java/com/sheep/jiuyan/samllsheep/page/GameDetailActivity.java

@@ -261,7 +261,11 @@ public class GameDetailActivity extends BaseActivity {
         Intent intent = getIntent();
         mTask = (TaskPublish) intent.getSerializableExtra("data");
         if (mTask != null) {
-            mTvTime.setText(String.format("截止日期:%s", mTask.getOverTime().split(" ")[0]));
+            try {
+                mTvTime.setText(String.format("截止日期:%s", mTask.getOverTime().split(" ")[0]));
+            } catch (Exception e) {
+                e.printStackTrace();
+            }
             mTvBouns.setText(mTask.getTask().getBonus());
             mTvMoney.setText(mTask.getTask().getPrice());
             Glide.with(SheepApp.mContext)

+ 23 - 2
app/src/main/java/com/sheep/jiuyan/samllsheep/page/MainActivity.java

@@ -2,6 +2,7 @@ package com.sheep.jiuyan.samllsheep.page;
 
 import android.Manifest;
 import android.app.AlertDialog;
+import android.content.DialogInterface;
 import android.content.Intent;
 import android.content.pm.PackageManager;
 import android.os.Build;
@@ -14,6 +15,9 @@ import android.support.v4.view.ViewPager;
 import android.support.v4.widget.SwipeRefreshLayout;
 import android.util.Log;
 import android.view.View;
+import android.view.animation.AccelerateDecelerateInterpolator;
+import android.view.animation.Animation;
+import android.view.animation.RotateAnimation;
 import android.widget.Button;
 import android.widget.ImageButton;
 import android.widget.ImageView;
@@ -172,6 +176,7 @@ public class MainActivity extends BaseActivity {
         mImgBag.setOnClickListener(new View.OnClickListener() {
             @Override
             public void onClick(View v) {
+                mImgBag.clearAnimation();
                 showNewDialog();
             }
         });
@@ -216,6 +221,12 @@ public class MainActivity extends BaseActivity {
                 }
             });
             mDialog.setCanceledOnTouchOutside(false);
+            mDialog.setOnDismissListener(new DialogInterface.OnDismissListener() {
+                @Override
+                public void onDismiss(DialogInterface dialog) {
+                    startAnimation(mImgBag);
+                }
+            });
         }
         mDialog.show();
         //        }
@@ -237,8 +248,9 @@ public class MainActivity extends BaseActivity {
         });
         btn.setVisibility(View.VISIBLE);
 
-        mImgBag = (ImageView) findViewById(R.id.img_baseactivity_title);
-        mImgBag.setImageResource(R.drawable.hongbao);
+        findViewById(R.id.img_baseactivity_title).setVisibility(View.GONE);
+        mImgBag = (ImageView) findViewById(R.id.img_red);
+        startAnimation(mImgBag);
         mRappTabLayout = (RappTabLayout) findViewById(R.id.tab_main_activity);
         mViewPager = (ViewPager) findViewById(R.id.viewpager_main_activity);
         mSwipeRefreshLayout = (SwipeRefreshLayout) findViewById(R.id.swipe_main_activity);
@@ -266,6 +278,15 @@ public class MainActivity extends BaseActivity {
         //                });
     }
 
+    private void startAnimation(View view) {
+        RotateAnimation rAnima = new RotateAnimation(-5, 5);
+        rAnima.setDuration(500);
+        rAnima.setRepeatCount(-1);
+        rAnima.setRepeatMode(Animation.REVERSE);
+        rAnima.setInterpolator(new AccelerateDecelerateInterpolator());
+        view.startAnimation(rAnima);
+    }
+
     @Override
     protected void onResume() {
       /*  FloatMsg floatMsg = new FloatMsg();

+ 3 - 3
app/src/main/java/com/sheep/jiuyan/samllsheep/page/SplashActivity.java

@@ -53,7 +53,7 @@ public class SplashActivity extends BaseActivity {
                     Intent intent = new Intent(SplashActivity.this, MainActivity.class);
                     startActivity(intent);
                     finish();
-                }else {
+                } else {
                     Intent intent = new Intent(SplashActivity.this, LoginActivity.class);
                     startActivity(intent);
                     finish();
@@ -71,7 +71,7 @@ public class SplashActivity extends BaseActivity {
         if (!has) {
             PremissUtils.openUsageAccessPage(this);
         }
-        if (Build.VERSION.SDK_INT >= 23){
+        if (Build.VERSION.SDK_INT >= 23) {
             if (Settings.canDrawOverlays(SplashActivity.this)) {
                 Intent intent = new Intent(SplashActivity.this, FloatService.class);
                 startService(intent);
@@ -81,7 +81,7 @@ public class SplashActivity extends BaseActivity {
                 Toast.makeText(SplashActivity.this, "需要取得权限以使用悬浮窗", Toast.LENGTH_SHORT).show();
                 startActivity(intent);
             }
-        }else {
+        } else {
             Intent intent = new Intent(SplashActivity.this, FloatService.class);
             startService(intent);
         }

+ 8 - 3
app/src/main/java/com/sheep/jiuyan/samllsheep/page/TaskRecordActivity.java

@@ -188,9 +188,14 @@ public class TaskRecordActivity extends BaseActivity {
                     mLvTask.setAdapter(mAdapter = new CommonAdapter<Commit>(TaskRecordActivity.this, R.layout.task_record_item, commits) {
                         @Override
                         protected void convert(ViewHolder viewHolder, Commit item, int position) {
-                            String[] tmp1 = item.getCreateTime().split("-");
-                            String[] tmp2 = tmp1[2].split(" ")[1].split(":");
-                            String time = tmp1[1] + "/" + tmp1[2].split(" ")[0] + "\n" + tmp2[0] + ":" + tmp2[1];
+                            String time = null;
+                            try {
+                                String[] tmp1 = item.getCreateTime().split("-");
+                                String[] tmp2 = tmp1[2].split(" ")[1].split(":");
+                                time = tmp1[1] + "/" + tmp1[2].split(" ")[0] + "\n" + tmp2[0] + ":" + tmp2[1];
+                            } catch (Exception e) {
+                                e.printStackTrace();
+                            }
                             viewHolder.setText(R.id.tv_time, time);
                             getState(viewHolder.<TextView>getView(R.id.tv_state), item.getStatus());
                             viewHolder.setText(R.id.txt_baseactivity_title, item.getTask().getTitle());

+ 6 - 2
app/src/main/java/com/sheep/jiuyan/samllsheep/page/adapter/AdpMainActivity.java

@@ -63,8 +63,12 @@ public class AdpMainActivity extends AdpCommonRecy<TaskPublish> {
         holder.getView(R.id.tv_count, TextView.class)
                 .setText(Html.fromHtml(HTML_FORMAT.replace("当前数量", taskPublish.getSurplusCount() + "")
                         .replace("总数", taskPublish.getTotalCouont() + "")));
-        holder.getView(R.id.tv_time, TextView.class)
-                .setText(String.format("截止日期:%s", taskPublish.getOverTime().split(" ")[0]));
+        try {
+            holder.getView(R.id.tv_time, TextView.class)
+                    .setText(String.format("截止日期:%s", taskPublish.getOverTime().split(" ")[0]));
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
         holder.getView(R.id.tv_money, TextView.class)
                 .setText(taskPublish.getTask().getPrice());
         holder.getView(R.id.tv_bouns, TextView.class)

+ 5 - 1
app/src/main/java/com/sheep/jiuyan/samllsheep/page/adapter/TaskAdapter.java

@@ -57,7 +57,11 @@ public class TaskAdapter extends RecyclerView.Adapter<TaskAdapter.ViewHolder> {
     public void onBindViewHolder(ViewHolder viewHolder, final int position) {
         viewHolder.mTvTitle.setText(datas.get(position).getTask().getTitle());
         viewHolder.mTvCount.setText(datas.get(position).getSurplusCount() + "/" + datas.get(position).getTotalCouont());
-        viewHolder.mTvTime.setText(String.format("截止日期:%s", datas.get(position).getOverTime().split(" ")[0]));
+        try {
+            viewHolder.mTvTime.setText(String.format("截止日期:%s", datas.get(position).getOverTime().split(" ")[0]));
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
         viewHolder.mTvMoney.setText(datas.get(position).getTask().getPrice());
         viewHolder.mTvBouns.setText(datas.get(position).getTask().getBonus());
         Glide.with(mActivity)

+ 5 - 1
app/src/main/java/com/sheep/jiuyan/samllsheep/page/fragment/FgtMainPageTask.java

@@ -292,7 +292,11 @@ public class FgtMainPageTask extends BaseFragment {
                                 .dontAnimate()
                                 .into(mImgIcon);
                     mTvTitle.setText(taskPublish.getTask().getTitle());
-                    mTvTime.setText("截止日期:" + taskPublish.getOverTime().split(" ")[0]);
+                    try {
+                        mTvTime.setText("截止日期:" + taskPublish.getOverTime().split(" ")[0]);
+                    } catch (Exception e) {
+                        e.printStackTrace();
+                    }
                     mTvCount.setText(taskPublish.getSurplusCount() + "/" + taskPublish.getTotalCouont());
                     mTvMoney.setText(taskPublish.getTask().getPrice());
                     if (!TextUtils.isEmpty(taskPublish.getTask().getPkg())) {

BIN
app/src/main/res/drawable-hdpi/hongbao.png


BIN
app/src/main/res/drawable-hdpi/icon.png


BIN
app/src/main/res/drawable-hdpi/received.png


BIN
app/src/main/res/drawable-hdpi/splash_bg.png


BIN
app/src/main/res/drawable-xhdpi/hongbao.png


BIN
app/src/main/res/drawable-xhdpi/received.png


BIN
app/src/main/res/drawable-xxhdpi/hongbao.png


BIN
app/src/main/res/drawable-xxhdpi/received.png


+ 8 - 0
app/src/main/res/layout/main_activity.xml

@@ -150,4 +150,12 @@
         android:background="@color/sheep_red"
         android:src="@drawable/chuck_ic_share_white_24dp"/>
 
+    <ImageView
+        android:id="@+id/img_red"
+        android:layout_width="40dp"
+        android:layout_height="40dp"
+        android:layout_marginLeft="10dp"
+        android:layout_marginTop="10dp"
+        android:src="@drawable/hongbao"/>
+
 </FrameLayout>

+ 1 - 1
app/src/main/res/layout/splash_activity.xml

@@ -6,6 +6,6 @@
     <ImageView
         android:layout_width="match_parent"
         android:layout_height="match_parent"
-        android:src="@drawable/icon"/>
+        android:src="@drawable/splash_bg"/>
 
 </LinearLayout>