From 2d2f1ee2dd3cc4dc00735fc25d87064adbd10231 Mon Sep 17 00:00:00 2001 From: Administrator <123> Date: Wed, 03 Nov 2021 02:44:42 +0000 Subject: [PATCH] 首页 UI调整 --- app/src/main/res/drawable/bg_white_corner.xml | 2 app/src/main/res/drawable/trans_gray_circle.xml | 9 +++ app/src/main/java/com/duqing/missions/base/BaseActivity.java | 7 + app/src/main/res/layout/home_item_classify.xml | 2 app/src/main/res/mipmap-xxhdpi/icon_search.png | 0 app/src/main/res/drawable/bg_border_gray_corner.xml | 2 app/src/main/java/com/duqing/missions/widgets/TitleBarView.java | 3 app/src/main/res/layout/homt_item_recommend.xml | 3 app/src/main/res/drawable/bg_border_red_corner.xml | 2 app/src/main/res/layout/fragment_home.xml | 105 +++++++++++++++++++++++++++++++--- app/src/main/res/values/colors.xml | 1 app/src/main/java/com/duqing/missions/ui/login/view/LoginActivity.java | 1 app/src/main/res/mipmap-xxxhdpi/icon_search.png | 0 app/src/main/res/drawable/bg_red_bottom_corner.xml | 9 +++ app/src/main/res/mipmap-xhdpi/icon_search.png | 0 app/src/main/res/values/dimens.xml | 1 16 files changed, 127 insertions(+), 20 deletions(-) diff --git a/app/src/main/java/com/duqing/missions/base/BaseActivity.java b/app/src/main/java/com/duqing/missions/base/BaseActivity.java index b756705..3d37b2c 100644 --- a/app/src/main/java/com/duqing/missions/base/BaseActivity.java +++ b/app/src/main/java/com/duqing/missions/base/BaseActivity.java @@ -29,6 +29,7 @@ import androidx.viewbinding.ViewBinding; import com.duqing.missions.MyApplication; +import com.duqing.missions.R; import com.duqing.missions.data.ApkUpGradeResult; import com.duqing.missions.util.MyLog; import com.duqing.missions.util.ResPonse; @@ -103,6 +104,8 @@ protected void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState); // get genericity "B" + setStatusBarBgColor(R.color.white); + setStatusBarTextColor(true); Class<B> entityClass = (Class<B>) ((ParameterizedType) this.getClass().getGenericSuperclass()).getActualTypeArguments()[0]; try { Method method = entityClass.getMethod("inflate", LayoutInflater.class);//get method from name "inflate"; @@ -147,9 +150,9 @@ public void setStatusBarTextColor(boolean isBlack){ View decor = getWindow().getDecorView(); if (isBlack) { - decor.setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN | View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR); + decor.setSystemUiVisibility( View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR); } else { - decor.setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN | View.SYSTEM_UI_FLAG_LAYOUT_STABLE); + decor.setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_STABLE); } } diff --git a/app/src/main/java/com/duqing/missions/ui/login/view/LoginActivity.java b/app/src/main/java/com/duqing/missions/ui/login/view/LoginActivity.java index 59eeae1..d10b2eb 100644 --- a/app/src/main/java/com/duqing/missions/ui/login/view/LoginActivity.java +++ b/app/src/main/java/com/duqing/missions/ui/login/view/LoginActivity.java @@ -35,7 +35,6 @@ final EditText phoneEdit = binding.editPhone; final EditText passwordEditText = binding.editPassword; final Button loginButton = binding.login; - loginViewModel.getLoginFormState().observe(this, new Observer<LoginFormState>() { @Override public void onChanged(@Nullable LoginFormState loginFormState) { diff --git a/app/src/main/java/com/duqing/missions/widgets/TitleBarView.java b/app/src/main/java/com/duqing/missions/widgets/TitleBarView.java index 69d159c..a85fc09 100644 --- a/app/src/main/java/com/duqing/missions/widgets/TitleBarView.java +++ b/app/src/main/java/com/duqing/missions/widgets/TitleBarView.java @@ -95,13 +95,14 @@ viewWidth = getMeasuredWidth() - getPaddingLeft() - getPaddingRight(); viewHeight = getMeasuredHeight() - getPaddingTop() - getPaddingBottom(); mRect = new Rect(getPaddingLeft(),getPaddingTop(),getMeasuredWidth() - getPaddingRight(),getMeasuredHeight() - getPaddingBottom()); + Log.e("TitleBarView","onMeasure mRect:"+mRect); } @Override protected void onDraw(Canvas canvas) { super.onDraw(canvas); - Log.e("TitleBarView","mRect:"+mRect); + Log.e("TitleBarView","onDraw mRect:"+mRect); if(leftDra != null){ final Bitmap bitmap = ((BitmapDrawable) leftDra).getBitmap(); float top = mRect.top+(viewHeight-bitmap.getHeight()*2f)/2; diff --git a/app/src/main/res/drawable/bg_border_gray_corner.xml b/app/src/main/res/drawable/bg_border_gray_corner.xml index 61aee37..d671de6 100644 --- a/app/src/main/res/drawable/bg_border_gray_corner.xml +++ b/app/src/main/res/drawable/bg_border_gray_corner.xml @@ -5,7 +5,7 @@ <stroke android:width="2dp" android:color="@color/gray" /> - + <solid android:color="@color/white" /> <corners android:radius="@dimen/radios"/> </shape> </item> diff --git a/app/src/main/res/drawable/bg_border_red_corner.xml b/app/src/main/res/drawable/bg_border_red_corner.xml index ee52996..0610430 100644 --- a/app/src/main/res/drawable/bg_border_red_corner.xml +++ b/app/src/main/res/drawable/bg_border_red_corner.xml @@ -5,7 +5,7 @@ <stroke android:width="2dp" android:color="@color/red" /> - + <solid android:color="@color/white" /> <corners android:radius="@dimen/small_radios"/> </shape> </item> diff --git a/app/src/main/res/drawable/bg_red_bottom_corner.xml b/app/src/main/res/drawable/bg_red_bottom_corner.xml new file mode 100644 index 0000000..1cb9a15 --- /dev/null +++ b/app/src/main/res/drawable/bg_red_bottom_corner.xml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="utf-8"?> +<selector xmlns:android="http://schemas.android.com/apk/res/android"> + <item> + <shape android:shape="rectangle"> + <solid android:color="@color/red" /> + <corners android:bottomLeftRadius="@dimen/radios" android:bottomRightRadius="@dimen/radios"/> + </shape> + </item> +</selector> \ No newline at end of file diff --git a/app/src/main/res/drawable/bg_white_corner.xml b/app/src/main/res/drawable/bg_white_corner.xml index 5eb2342..90d62fc 100644 --- a/app/src/main/res/drawable/bg_white_corner.xml +++ b/app/src/main/res/drawable/bg_white_corner.xml @@ -3,7 +3,7 @@ <item> <shape android:shape="rectangle"> <solid android:color="@color/white" /> - <corners android:radius="@dimen/small_radios"/> + <corners android:radius="@dimen/radios"/> </shape> </item> </selector> \ No newline at end of file diff --git a/app/src/main/res/drawable/trans_gray_circle.xml b/app/src/main/res/drawable/trans_gray_circle.xml new file mode 100644 index 0000000..a538bc2 --- /dev/null +++ b/app/src/main/res/drawable/trans_gray_circle.xml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="utf-8"?> +<selector xmlns:android="http://schemas.android.com/apk/res/android"> + <item> + <shape android:shape="rectangle"> + <solid android:color="@color/trans_gray" /> + <corners android:radius="@dimen/circle"/> + </shape> + </item> +</selector> \ No newline at end of file diff --git a/app/src/main/res/layout/fragment_home.xml b/app/src/main/res/layout/fragment_home.xml index 0eb77bd..3ad528c 100644 --- a/app/src/main/res/layout/fragment_home.xml +++ b/app/src/main/res/layout/fragment_home.xml @@ -8,19 +8,78 @@ android:layout_width="match_parent" android:orientation="vertical" android:layout_height="match_parent"> - <ImageView - android:id="@+id/img_search" - android:layout_width="39dp" - android:layout_height="35dp" + + <View + android:id="@+id/top_view" + android:layout_width="match_parent" + android:layout_height="50dp" + android:background="@color/red" app:layout_constraintLeft_toLeftOf="parent" - app:layout_constraintTop_toTopOf="parent" - app:layout_constraintBottom_toTopOf="@id/smart_refresh" - android:src="@android:drawable/ic_search_category_default"/> + app:layout_constraintRight_toRightOf="parent" + app:layout_constraintTop_toTopOf="parent"/> + + <TextView + android:id="@+id/text_bidding" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_marginLeft="@dimen/activity_horizontal_margin" + android:paddingRight="@dimen/frame_margin_lr" + app:layout_constraintLeft_toLeftOf="parent" + app:layout_constraintTop_toTopOf="@id/top_view" + app:layout_constraintBottom_toBottomOf="@id/top_view" + app:layout_constraintRight_toLeftOf="@id/text_search" + android:text="竞价" + android:textColor="@color/white" /> + + + <TextView + android:id="@+id/text_search" + android:layout_width="0dp" + android:layout_height="35dp" + android:drawableLeft="@mipmap/icon_search" + android:text="任务标题、编号" + android:textColor="@color/gray" + android:drawablePadding="10dp" + android:background="@drawable/trans_gray_circle" + android:gravity="center" + android:paddingLeft="20dp" + android:paddingRight="20dp" + android:layout_marginLeft="@dimen/activity_horizontal_margin" + android:layout_marginRight="@dimen/activity_horizontal_margin" + app:layout_constraintLeft_toRightOf="@id/text_bidding" + app:layout_constraintRight_toLeftOf="@id/image_service" + app:layout_constraintTop_toTopOf="@id/top_view" + app:layout_constraintBottom_toBottomOf="@id/top_view" /> + + <ImageView + android:id="@+id/image_service" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:src="@drawable/abc_vector_test" + android:layout_marginRight="@dimen/activity_horizontal_margin" + app:layout_constraintTop_toTopOf="@id/top_view" + app:layout_constraintBottom_toBottomOf="@id/top_view" + app:layout_constraintRight_toLeftOf="@id/image_invite"/> + + + <ImageView + android:id="@+id/image_invite" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:src="@drawable/abc_vector_test" + android:layout_marginRight="@dimen/activity_horizontal_margin" + app:layout_constraintTop_toTopOf="@id/top_view" + app:layout_constraintBottom_toBottomOf="@id/top_view" + app:layout_constraintRight_toRightOf="parent" /> + + + + <com.scwang.smart.refresh.layout.SmartRefreshLayout android:id="@+id/smart_refresh" android:layout_width="match_parent" android:layout_height="0dp" - app:layout_constraintTop_toBottomOf="@id/img_search" + app:layout_constraintTop_toBottomOf="@id/top_view" app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintBottom_toBottomOf="parent" > @@ -34,11 +93,22 @@ android:layout_height="wrap_content" > + <View + android:layout_width="match_parent" + android:layout_height="0dp" + android:background="@drawable/bg_red_bottom_corner" + app:layout_constraintTop_toTopOf="parent" + app:layout_constraintLeft_toLeftOf="parent" + app:layout_constraintRight_toRightOf="parent" + app:layout_constraintBottom_toBottomOf="@id/recycler_classify" + android:layout_marginBottom="50dp"/> + <androidx.recyclerview.widget.RecyclerView android:id="@+id/recycler_top" android:layout_width="match_parent" android:layout_height="wrap_content" android:overScrollMode="never" + android:layout_margin="@dimen/activity_horizontal_margin" app:layoutManager="androidx.recyclerview.widget.GridLayoutManager" app:spanCount="3" tools:itemCount="3" @@ -50,10 +120,13 @@ android:layout_height="wrap_content" android:layout_marginTop="10dp" android:overScrollMode="never" + android:background="@drawable/bg_white_corner" + android:layout_margin="@dimen/activity_horizontal_margin" + android:elevation="@dimen/small_radios" tools:listitem="@layout/home_item_classify" app:layout_constraintTop_toBottomOf="@id/recycler_top" app:layoutManager="androidx.recyclerview.widget.GridLayoutManager" - app:spanCount="5" + app:spanCount="3" tools:itemCount="3" tools:layout_editor_absoluteX="1dp" tools:layout_editor_absoluteY="247dp"/> @@ -67,14 +140,25 @@ android:textSize="14dp" android:text="任务推荐" android:textColor="@color/black" - android:layout_margin="@dimen/frame_margin_lr" /> + android:layout_margin="@dimen/activity_horizontal_margin" /> + <TextView + android:id="@+id/text_newcomer" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + app:layout_constraintTop_toBottomOf="@id/recycler_classify" + app:layout_constraintRight_toRightOf="parent" + android:textSize="14dp" + android:text="新人易做 >" + android:textColor="@color/black" + android:layout_margin="@dimen/activity_horizontal_margin" /> <androidx.recyclerview.widget.RecyclerView android:id="@+id/recycler_recommend" android:layout_width="match_parent" android:layout_height="wrap_content" android:overScrollMode="never" tools:listitem="@layout/homt_item_recommend" + android:padding="@dimen/activity_horizontal_margin" app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintTop_toBottomOf="@id/text_recommend" /> @@ -82,5 +166,4 @@ </androidx.constraintlayout.widget.ConstraintLayout> </androidx.core.widget.NestedScrollView> </com.scwang.smart.refresh.layout.SmartRefreshLayout> - </androidx.constraintlayout.widget.ConstraintLayout> \ No newline at end of file diff --git a/app/src/main/res/layout/home_item_classify.xml b/app/src/main/res/layout/home_item_classify.xml index de20ca3..821d1b4 100644 --- a/app/src/main/res/layout/home_item_classify.xml +++ b/app/src/main/res/layout/home_item_classify.xml @@ -12,7 +12,7 @@ <ImageView android:id="@+id/img_icon" - android:layout_width="80dp" + android:layout_width="50dp" android:layout_height="wrap_content" android:adjustViewBounds="true" tools:srcCompat="@tools:sample/avatars"/> diff --git a/app/src/main/res/layout/homt_item_recommend.xml b/app/src/main/res/layout/homt_item_recommend.xml index b7e8631..d9ff7d0 100644 --- a/app/src/main/res/layout/homt_item_recommend.xml +++ b/app/src/main/res/layout/homt_item_recommend.xml @@ -2,7 +2,8 @@ <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" - android:padding="@dimen/frame_margin_lr" + android:paddingTop="@dimen/frame_margin_lr" + android:paddingBottom="@dimen/frame_margin_lr" android:layout_width="match_parent" android:layout_height="wrap_content"> diff --git a/app/src/main/res/mipmap-xhdpi/icon_search.png b/app/src/main/res/mipmap-xhdpi/icon_search.png new file mode 100644 index 0000000..a322c15 --- /dev/null +++ b/app/src/main/res/mipmap-xhdpi/icon_search.png Binary files differ diff --git a/app/src/main/res/mipmap-xxhdpi/icon_search.png b/app/src/main/res/mipmap-xxhdpi/icon_search.png new file mode 100644 index 0000000..aef7ee4 --- /dev/null +++ b/app/src/main/res/mipmap-xxhdpi/icon_search.png Binary files differ diff --git a/app/src/main/res/mipmap-xxxhdpi/icon_search.png b/app/src/main/res/mipmap-xxxhdpi/icon_search.png new file mode 100644 index 0000000..d14e18f --- /dev/null +++ b/app/src/main/res/mipmap-xxxhdpi/icon_search.png Binary files differ diff --git a/app/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml index 9d53e55..34c20d0 100644 --- a/app/src/main/res/values/colors.xml +++ b/app/src/main/res/values/colors.xml @@ -7,6 +7,7 @@ <color name="white_2">#F3F3F3</color> <color name="red">#FF1414</color> <color name="gray">#CDCDCD</color> + <color name="trans_gray">#4DFFFFFF</color> <color name="enable">#ECECEC</color> <color name="deep_sky">#4184D6</color> <color name="sky">#509CFA</color> diff --git a/app/src/main/res/values/dimens.xml b/app/src/main/res/values/dimens.xml index 34a4985..60f9c7e 100644 --- a/app/src/main/res/values/dimens.xml +++ b/app/src/main/res/values/dimens.xml @@ -3,6 +3,7 @@ <dimen name="activity_horizontal_margin">16dp</dimen> <dimen name="activity_vertical_margin">16dp</dimen> <dimen name="small_radios">3dp</dimen> + <dimen name="circle">1000dp</dimen> <dimen name="radios">10dp</dimen> <dimen name="frame_margin_lr">10dp</dimen> </resources> \ No newline at end of file -- Gitblit v1.9.1