Quellcode durchsuchen

优化流程 收缩控件优化

ZhangXinYu vor 6 Jahren
Ursprung
Commit
fef3a568cb

+ 0 - 4
app/src/main/java/com/webrain/dailypay/ui/activity/identity/IdentityCompanyActivity.java

@@ -138,10 +138,6 @@ public class IdentityCompanyActivity extends BaseActivity<IdentityCompanyPresent
         cvTitle.setLayoutParams(cvTitleLayoutParams);
         cvTitle.setLayoutParams(cvTitleLayoutParams);
 
 
         rgValid.setOnCheckedChangeListener(onCheckedChangeListener);
         rgValid.setOnCheckedChangeListener(onCheckedChangeListener);
-
-        salTimePick.initExpand(false);
-
-
     }
     }
 
 
     RadioGroup.OnCheckedChangeListener onCheckedChangeListener = new RadioGroup.OnCheckedChangeListener() {
     RadioGroup.OnCheckedChangeListener onCheckedChangeListener = new RadioGroup.OnCheckedChangeListener() {

+ 0 - 4
app/src/main/java/com/webrain/dailypay/ui/activity/resume/InvitedInterviewActivity.java

@@ -71,10 +71,6 @@ public class InvitedInterviewActivity extends BaseActivity<InvitedInterviewPrese
     @Override
     @Override
     protected void onCreate(Bundle savedInstanceState) {
     protected void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
         super.onCreate(savedInstanceState);
-//        salPosition.initExpand(false);
-        salDate.initExpand(false);
-        salAddress.initExpand(false);
-        salTime.initExpand(false);
         mvpPresenter.init();
         mvpPresenter.init();
     }
     }
 
 

+ 2 - 6
app/src/main/java/com/webrain/dailypay/ui/fragment/position/PositionFullReleaseFragment.java

@@ -147,12 +147,6 @@ public class PositionFullReleaseFragment extends BaseFragment<PositionFullReleas
         View view = super.onCreateView(inflater, container, savedInstanceState);
         View view = super.onCreateView(inflater, container, savedInstanceState);
 
 
         mHolderViews = new ArrayList<>();
         mHolderViews = new ArrayList<>();
-
-        salSalaryInterval.initExpand(false);
-        salEducationalRequirement.initExpand(false);
-        salAgeRequirement.initExpand(false);
-        salLengthOfServiceInterval.initExpand(false);
-        salDeadline.initExpand(false);
         if (positionListBean != null)
         if (positionListBean != null)
             mvpPresenter.iniPositionBean(positionListBean);
             mvpPresenter.iniPositionBean(positionListBean);
         mvpPresenter.init();
         mvpPresenter.init();
@@ -452,6 +446,8 @@ public class PositionFullReleaseFragment extends BaseFragment<PositionFullReleas
             mHolder.initShowBack(bean);
             mHolder.initShowBack(bean);
         else if (isPublishNationwide)
         else if (isPublishNationwide)
             mHolder.initShowBackCountry();
             mHolder.initShowBackCountry();
+        else
+            mHolder.initDefault();
         llWorkAddress.addView(mHolder.getView());
         llWorkAddress.addView(mHolder.getView());
         mHolderViews.add(mHolder);
         mHolderViews.add(mHolder);
         tvWorkAddress.setHint(R.string.hint_click_add_select_address);
         tvWorkAddress.setHint(R.string.hint_click_add_select_address);

+ 2 - 6
app/src/main/java/com/webrain/dailypay/ui/fragment/position/PositionPartReleaseFragment.java

@@ -44,9 +44,7 @@ import java.util.List;
 
 
 import butterknife.BindDrawable;
 import butterknife.BindDrawable;
 import butterknife.BindView;
 import butterknife.BindView;
-import butterknife.ButterKnife;
 import butterknife.OnClick;
 import butterknife.OnClick;
-import butterknife.Unbinder;
 
 
 public class PositionPartReleaseFragment extends BaseFragment<PositionPartReleaseFragmentPresenter> implements PositionPartReleaseFragmentContacts.IPositionPartReleaseFragmentView {
 public class PositionPartReleaseFragment extends BaseFragment<PositionPartReleaseFragmentPresenter> implements PositionPartReleaseFragmentContacts.IPositionPartReleaseFragmentView {
     PositionTypeSelectAdapter mAdapter;
     PositionTypeSelectAdapter mAdapter;
@@ -173,10 +171,6 @@ public class PositionPartReleaseFragment extends BaseFragment<PositionPartReleas
         View view = super.onCreateView(inflater, container, savedInstanceState);
         View view = super.onCreateView(inflater, container, savedInstanceState);
         mHolderViews = new ArrayList<>();
         mHolderViews = new ArrayList<>();
 
 
-        salWorkTimeFrame.initExpand(false);
-        salWorkTime.initExpand(false);
-        salRecruitmentDeadline.initExpand(false);
-        salEducationalRequirement.initExpand(false);
         salAgain.initExpand(false);
         salAgain.initExpand(false);
         salMore.initExpand(false);
         salMore.initExpand(false);
         salAgain.setOnAnimationListener(onAgainAnimationListener);
         salAgain.setOnAnimationListener(onAgainAnimationListener);
@@ -528,6 +522,8 @@ public class PositionPartReleaseFragment extends BaseFragment<PositionPartReleas
             mHolder.initShowBack(bean);
             mHolder.initShowBack(bean);
         else if (isPublishNationwide)
         else if (isPublishNationwide)
             mHolder.initShowBackCountry();
             mHolder.initShowBackCountry();
+        else
+            mHolder.initDefault();
         llWorkAddress.addView(mHolder.getView());
         llWorkAddress.addView(mHolder.getView());
         mHolderViews.add(mHolder);
         mHolderViews.add(mHolder);
         tvWorkAddress.setHint(R.string.hint_click_add_select_address);
         tvWorkAddress.setHint(R.string.hint_click_add_select_address);

+ 7 - 0
app/src/main/java/com/webrain/dailypay/ui/viewholder/WorkAddressHolderView.java

@@ -53,6 +53,13 @@ public class WorkAddressHolderView extends BaseViewHolder {
     }
     }
 
 
     /**
     /**
+     * 默认
+     */
+    public void initDefault() {
+        salWorkAddress.toggleExpand();
+    }
+
+    /**
      * 工作地址回调
      * 工作地址回调
      */
      */
     WorkAddressHolder.OnAddressChangeListener onAddressChangeListener = new WorkAddressHolder.OnAddressChangeListener() {
     WorkAddressHolder.OnAddressChangeListener onAddressChangeListener = new WorkAddressHolder.OnAddressChangeListener() {

+ 27 - 14
app/src/main/java/com/webrain/dailypay/ui/widget/ShrinkAnimationLayout.java

@@ -3,11 +3,14 @@ package com.webrain.dailypay.ui.widget;
 import android.animation.Animator;
 import android.animation.Animator;
 import android.animation.ValueAnimator;
 import android.animation.ValueAnimator;
 import android.content.Context;
 import android.content.Context;
+import android.content.res.TypedArray;
 import android.util.AttributeSet;
 import android.util.AttributeSet;
 import android.view.View;
 import android.view.View;
 import android.view.ViewGroup;
 import android.view.ViewGroup;
 import android.widget.LinearLayout;
 import android.widget.LinearLayout;
 
 
+import com.webrain.dailypay.R;
+
 public class ShrinkAnimationLayout extends LinearLayout {
 public class ShrinkAnimationLayout extends LinearLayout {
 
 
     public ShrinkAnimationLayout(Context context) {
     public ShrinkAnimationLayout(Context context) {
@@ -20,18 +23,21 @@ public class ShrinkAnimationLayout extends LinearLayout {
 
 
     public ShrinkAnimationLayout(Context context, AttributeSet attrs, int defStyle) {
     public ShrinkAnimationLayout(Context context, AttributeSet attrs, int defStyle) {
         super(context, attrs, defStyle);
         super(context, attrs, defStyle);
-        initView();
+        initView(context, attrs);
     }
     }
 
 
     private View layoutView;
     private View layoutView;
     private int viewHeight;
     private int viewHeight;
+    private int xmlHeight;
     private boolean isExpand;
     private boolean isExpand;
     private boolean isInitShow;
     private boolean isInitShow;
     private long animationDuration;
     private long animationDuration;
     private boolean isAnimation; //是否正在动画中
     private boolean isAnimation; //是否正在动画中
     private OnAnimationListener onAnimationListener;
     private OnAnimationListener onAnimationListener;
 
 
-    private void initView() {
+    private void initView(Context context, AttributeSet attrs) {
+        TypedArray ta = context.obtainStyledAttributes(attrs, com.webrain.baselibrary.R.styleable.ShrinkAnimationLayout);
+        xmlHeight = ta.getDimensionPixelSize(R.styleable.ShrinkAnimationLayout_salHeight, 0);
         layoutView = this;
         layoutView = this;
         isExpand = true;
         isExpand = true;
         animationDuration = 300;
         animationDuration = 300;
@@ -39,7 +45,7 @@ public class ShrinkAnimationLayout extends LinearLayout {
     }
     }
 
 
     /**
     /**
-     * @param isExpand 初始状态是否折叠
+     * @param isExpand 初始状态是否展开
      */
      */
     public void initExpand(boolean isExpand) {
     public void initExpand(boolean isExpand) {
         this.isExpand = isExpand;
         this.isExpand = isExpand;
@@ -64,18 +70,25 @@ public class ShrinkAnimationLayout extends LinearLayout {
      * View.post() 的 runnable 对象中的方法会在 View 的 measure、layout 等事件后触发
      * View.post() 的 runnable 对象中的方法会在 View 的 measure、layout 等事件后触发
      */
      */
     private void setViewDimensions() {
     private void setViewDimensions() {
-        layoutView.post(new Runnable() {
-            @Override
-            public void run() {
-                if (viewHeight <= 0) {
-                    viewHeight = layoutView.getMeasuredHeight();
-                }
-                if (isInitShow)
-                    if (!isExpand) {
-                        animateToggle(10);
+        if (xmlHeight > 0) {
+            viewHeight = xmlHeight;
+            isExpand = false;
+        } else {
+            layoutView.post(new Runnable() {
+                @Override
+                public void run() {
+                    if (viewHeight <= 0) {
+                        viewHeight = layoutView.getMeasuredHeight();
                     }
                     }
-            }
-        });
+                    if (isInitShow)
+                        if (!isExpand) {
+                            animateToggle(10);
+                        }
+                }
+            });
+        }
+
+
     }
     }
 
 
     public static void setViewHeight(View view, int height) {
     public static void setViewHeight(View view, int height) {

+ 2 - 1
app/src/main/res/layout/activity_identity_company.xml

@@ -255,7 +255,8 @@
                         <com.webrain.dailypay.ui.widget.ShrinkAnimationLayout
                         <com.webrain.dailypay.ui.widget.ShrinkAnimationLayout
                             android:id="@+id/sal_time_pick"
                             android:id="@+id/sal_time_pick"
                             android:layout_width="match_parent"
                             android:layout_width="match_parent"
-                            android:layout_height="141dp"
+                            android:layout_height="0dp"
+                            app:salHeight="142dp"
                             android:layout_marginRight="54dp"
                             android:layout_marginRight="54dp"
                             android:background="@color/main_purple"
                             android:background="@color/main_purple"
                             android:orientation="horizontal" />
                             android:orientation="horizontal" />

+ 8 - 4
app/src/main/res/layout/activity_invited_interview.xml

@@ -120,7 +120,8 @@
                 <com.webrain.dailypay.ui.widget.ShrinkAnimationLayout
                 <com.webrain.dailypay.ui.widget.ShrinkAnimationLayout
                     android:id="@+id/sal_position"
                     android:id="@+id/sal_position"
                     android:layout_width="match_parent"
                     android:layout_width="match_parent"
-                    android:layout_height="142dp"
+                    android:layout_height="0dp"
+                    app:salHeight="142dp"
                     android:background="@color/main_purple"
                     android:background="@color/main_purple"
                     android:visibility="gone" />
                     android:visibility="gone" />
 
 
@@ -156,7 +157,8 @@
                 <com.webrain.dailypay.ui.widget.ShrinkAnimationLayout
                 <com.webrain.dailypay.ui.widget.ShrinkAnimationLayout
                     android:id="@+id/sal_date"
                     android:id="@+id/sal_date"
                     android:layout_width="match_parent"
                     android:layout_width="match_parent"
-                    android:layout_height="218.5dp"
+                    android:layout_height="0dp"
+                    app:salHeight="218.5dp"
                     android:background="@color/main_purple"
                     android:background="@color/main_purple"
                     android:orientation="vertical" />
                     android:orientation="vertical" />
 
 
@@ -193,7 +195,8 @@
                 <com.webrain.dailypay.ui.widget.ShrinkAnimationLayout
                 <com.webrain.dailypay.ui.widget.ShrinkAnimationLayout
                     android:id="@+id/sal_time"
                     android:id="@+id/sal_time"
                     android:layout_width="match_parent"
                     android:layout_width="match_parent"
-                    android:layout_height="142dp"
+                    android:layout_height="0dp"
+                    app:salHeight="142dp"
                     android:background="@color/main_purple"
                     android:background="@color/main_purple"
                     android:orientation="vertical"
                     android:orientation="vertical"
                     android:paddingLeft="43dp"
                     android:paddingLeft="43dp"
@@ -231,7 +234,8 @@
                 <com.webrain.dailypay.ui.widget.ShrinkAnimationLayout
                 <com.webrain.dailypay.ui.widget.ShrinkAnimationLayout
                     android:id="@+id/sal_address"
                     android:id="@+id/sal_address"
                     android:layout_width="match_parent"
                     android:layout_width="match_parent"
-                    android:layout_height="173dp"
+                    android:layout_height="0dp"
+                    app:salHeight="173dp"
                     android:background="@color/main_purple"
                     android:background="@color/main_purple"
                     android:orientation="vertical" />
                     android:orientation="vertical" />
 
 

+ 8 - 4
app/src/main/res/layout/view_flipper_position_full_release_four.xml

@@ -151,7 +151,8 @@
                         <com.webrain.dailypay.ui.widget.ShrinkAnimationLayout
                         <com.webrain.dailypay.ui.widget.ShrinkAnimationLayout
                             android:id="@+id/sal_educational_requirement"
                             android:id="@+id/sal_educational_requirement"
                             android:layout_width="match_parent"
                             android:layout_width="match_parent"
-                            android:layout_height="142dp"
+                            android:layout_height="0dp"
+                            app:salHeight="142dp"
                             android:background="@color/main_purple"
                             android:background="@color/main_purple"
                             android:orientation="vertical" />
                             android:orientation="vertical" />
 
 
@@ -189,7 +190,8 @@
                         <com.webrain.dailypay.ui.widget.ShrinkAnimationLayout
                         <com.webrain.dailypay.ui.widget.ShrinkAnimationLayout
                             android:id="@+id/sal_age_requirement"
                             android:id="@+id/sal_age_requirement"
                             android:layout_width="match_parent"
                             android:layout_width="match_parent"
-                            android:layout_height="142dp"
+                            android:layout_height="0dp"
+                            app:salHeight="142dp"
                             android:background="@color/main_purple"
                             android:background="@color/main_purple"
                             android:orientation="vertical" />
                             android:orientation="vertical" />
 
 
@@ -227,7 +229,8 @@
                         <com.webrain.dailypay.ui.widget.ShrinkAnimationLayout
                         <com.webrain.dailypay.ui.widget.ShrinkAnimationLayout
                             android:id="@+id/sal_length_of_service_interval"
                             android:id="@+id/sal_length_of_service_interval"
                             android:layout_width="match_parent"
                             android:layout_width="match_parent"
-                            android:layout_height="142dp"
+                            android:layout_height="0dp"
+                            app:salHeight="142dp"
                             android:background="@color/main_purple"
                             android:background="@color/main_purple"
                             android:orientation="vertical" />
                             android:orientation="vertical" />
                     </LinearLayout>
                     </LinearLayout>
@@ -270,7 +273,8 @@
                 <com.webrain.dailypay.ui.widget.ShrinkAnimationLayout
                 <com.webrain.dailypay.ui.widget.ShrinkAnimationLayout
                     android:id="@+id/sal_deadline"
                     android:id="@+id/sal_deadline"
                     android:layout_width="match_parent"
                     android:layout_width="match_parent"
-                    android:layout_height="218.5dp"
+                    android:layout_height="0dp"
+                    app:salHeight="218.5dp"
                     android:background="@color/main_purple"
                     android:background="@color/main_purple"
                     android:orientation="vertical" />
                     android:orientation="vertical" />
 
 

+ 2 - 1
app/src/main/res/layout/view_flipper_position_full_release_three.xml

@@ -79,7 +79,8 @@
                 <com.webrain.dailypay.ui.widget.ShrinkAnimationLayout
                 <com.webrain.dailypay.ui.widget.ShrinkAnimationLayout
                     android:id="@+id/sal_salary_interval"
                     android:id="@+id/sal_salary_interval"
                     android:layout_width="match_parent"
                     android:layout_width="match_parent"
-                    android:layout_height="142dp"
+                    android:layout_height="0dp"
+                    app:salHeight="142dp"
                     android:background="@color/main_purple"
                     android:background="@color/main_purple"
                     android:orientation="vertical" />
                     android:orientation="vertical" />
 
 

+ 10 - 6
app/src/main/res/layout/view_flipper_position_part_release_two.xml

@@ -520,9 +520,10 @@
                         <com.webrain.dailypay.ui.widget.ShrinkAnimationLayout
                         <com.webrain.dailypay.ui.widget.ShrinkAnimationLayout
                             android:id="@+id/sal_work_time"
                             android:id="@+id/sal_work_time"
                             android:layout_width="match_parent"
                             android:layout_width="match_parent"
-                            android:layout_height="218.5dp"
+                            android:layout_height="0dp"
                             android:background="@color/main_purple"
                             android:background="@color/main_purple"
-                            android:orientation="vertical" />
+                            android:orientation="vertical"
+                            app:salHeight="218.5dp" />
 
 
                         <LinearLayout
                         <LinearLayout
                             android:layout_width="match_parent"
                             android:layout_width="match_parent"
@@ -557,9 +558,10 @@
                         <com.webrain.dailypay.ui.widget.ShrinkAnimationLayout
                         <com.webrain.dailypay.ui.widget.ShrinkAnimationLayout
                             android:id="@+id/sal_work_time_frame"
                             android:id="@+id/sal_work_time_frame"
                             android:layout_width="match_parent"
                             android:layout_width="match_parent"
-                            android:layout_height="142dp"
+                            android:layout_height="0dp"
                             android:background="@color/main_purple"
                             android:background="@color/main_purple"
-                            android:orientation="horizontal" />
+                            android:orientation="horizontal"
+                            app:salHeight="142dp" />
 
 
                         <LinearLayout
                         <LinearLayout
                             android:layout_width="match_parent"
                             android:layout_width="match_parent"
@@ -630,7 +632,8 @@
                         <com.webrain.dailypay.ui.widget.ShrinkAnimationLayout
                         <com.webrain.dailypay.ui.widget.ShrinkAnimationLayout
                             android:id="@+id/sal_educational_requirement"
                             android:id="@+id/sal_educational_requirement"
                             android:layout_width="match_parent"
                             android:layout_width="match_parent"
-                            android:layout_height="142dp"
+                            android:layout_height="0dp"
+                            app:salHeight="142dp"
                             android:background="@color/main_purple"
                             android:background="@color/main_purple"
                             android:orientation="vertical" />
                             android:orientation="vertical" />
 
 
@@ -728,7 +731,8 @@
                     <com.webrain.dailypay.ui.widget.ShrinkAnimationLayout
                     <com.webrain.dailypay.ui.widget.ShrinkAnimationLayout
                         android:id="@+id/sal_recruitment_deadline"
                         android:id="@+id/sal_recruitment_deadline"
                         android:layout_width="match_parent"
                         android:layout_width="match_parent"
-                        android:layout_height="244dp"
+                        android:layout_height="0dp"
+                        app:salHeight="244dp"
                         android:background="@color/main_purple"
                         android:background="@color/main_purple"
                         android:orientation="vertical"
                         android:orientation="vertical"
                         android:paddingTop="25.5dp" />
                         android:paddingTop="25.5dp" />

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

@@ -1,5 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <?xml version="1.0" encoding="utf-8"?>
 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:app="http://schemas.android.com/apk/res-auto"
     android:layout_width="match_parent"
     android:layout_width="match_parent"
     android:layout_height="wrap_content"
     android:layout_height="wrap_content"
     android:orientation="vertical">
     android:orientation="vertical">
@@ -38,7 +39,8 @@
     <com.webrain.dailypay.ui.widget.ShrinkAnimationLayout
     <com.webrain.dailypay.ui.widget.ShrinkAnimationLayout
         android:id="@+id/sal_work_address"
         android:id="@+id/sal_work_address"
         android:layout_width="match_parent"
         android:layout_width="match_parent"
-        android:layout_height="173dp"
+        android:layout_height="0dp"
         android:background="@color/main_purple"
         android:background="@color/main_purple"
-        android:orientation="vertical" />
+        android:orientation="vertical"
+        app:salHeight="173dp" />
 </LinearLayout>
 </LinearLayout>

+ 4 - 0
baselibrary/src/main/res/values/attrs.xml

@@ -34,4 +34,8 @@
         <attr name="civClipRoundCorner" format="dimension|reference" />
         <attr name="civClipRoundCorner" format="dimension|reference" />
         <attr name="civClipCircle" format="boolean" />
         <attr name="civClipCircle" format="boolean" />
     </declare-styleable>
     </declare-styleable>
+    <declare-styleable name="ShrinkAnimationLayout">
+        <attr name="salHeight" format="dimension" />
+    </declare-styleable>
+
 </resources>
 </resources>