Procházet zdrojové kódy

Add a gridview which can automatically expand the height -- 添加可以自动扩展高度的grideview (resolve: #14228)
Add function panel setting function -- 添加function panel 设置功能 (resolve: #14222)

Ray Zhang před 5 roky
rodič
revize
a5be863122

+ 36 - 0
ApexDrivers/ratradefiling/src/main/java/com/usai/ratradefiling/home/FunctionGrid.java

@@ -0,0 +1,36 @@
+package com.usai.ratradefiling.home;
+
+import android.content.Context;
+import android.util.AttributeSet;
+import android.widget.GridView;
+
+public class FunctionGrid extends GridView
+{
+    public FunctionGrid(Context context) {
+        super(context);
+
+    }
+
+    public FunctionGrid(Context context, AttributeSet attrs) {
+        super(context,attrs);
+
+    }
+
+    public FunctionGrid(Context context, AttributeSet attrs, int defStyleAttr) {
+        super(context,attrs,defStyleAttr);
+
+    }
+
+    public FunctionGrid(Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes) {
+        super(context,attrs,defStyleAttr,defStyleAttr);
+
+    }
+    @Override
+    protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
+        int expandSpec = MeasureSpec.makeMeasureSpec(
+                Integer.MAX_VALUE >> 2, MeasureSpec.AT_MOST);
+
+
+        super.onMeasure(widthMeasureSpec, expandSpec);
+    }
+}

+ 1 - 1
ApexDrivers/ratradefiling/src/main/java/com/usai/ratradefiling/home/HomeFragment.java

@@ -301,7 +301,7 @@ public class HomeFragment extends Fragment
 //                }
 //            }
         }
-        else if(resultCode == RootActivity.RequestCode.FunctionSetting)
+        else if(requestCode == RootActivity.RequestCode.FunctionSetting)
             {
                 self.mHeaderView.reloadFunctionPanel();
             }

+ 3 - 1
ApexDrivers/ratradefiling/src/main/java/com/usai/ratradefiling/home/HomeHeaderView.java

@@ -26,7 +26,8 @@ public class HomeHeaderView extends RelativeLayout {
 
     HomeFragment hf;
     JSONObject function_json=null;
-    GridView function_panel=null;
+
+    FunctionGrid function_panel=null;
 
     TextView tv_company;
     TextView tv_welcome;
@@ -115,6 +116,7 @@ public class HomeHeaderView extends RelativeLayout {
 
         function_panel = findViewById(R.id.function_grid);
         function_panel.setAdapter(new FunctionPanelAdapter(getContext(),function_json));
+
         function_panel.setOnItemClickListener(new AdapterView.OnItemClickListener() {
             @Override
             public void onItemClick(AdapterView<?> parent, View view, int position, long id) {

+ 4 - 13
ApexDrivers/ratradefiling/src/main/res/layout/home_header_view1.xml

@@ -67,26 +67,17 @@
 
         </androidx.constraintlayout.widget.ConstraintLayout>
 
-        <View
-            android:id="@+id/view2"
-            android:layout_width="0dp"
-            android:layout_height="0dp"
-            android:layout_marginBottom="20dp"
-            android:background="@drawable/gradient_color"
-            app:layout_constraintBottom_toBottomOf="@+id/function_grid"
-            app:layout_constraintEnd_toEndOf="parent"
-            app:layout_constraintStart_toStartOf="parent"
-            app:layout_constraintTop_toBottomOf="@+id/constraintLayout2" />
-
-        <GridView
+        <com.usai.ratradefiling.home.FunctionGrid
             android:id="@+id/function_grid"
-            android:layout_width="match_parent"
+            android:layout_width="0dp"
             android:layout_height="wrap_content"
             android:layout_marginStart="8dp"
             android:layout_marginTop="8dp"
             android:layout_marginEnd="8dp"
+            android:layout_marginBottom="8dp"
             android:background="@drawable/home_header_round_corner"
             android:clipChildren="false"
+
             android:numColumns="4"
 
             android:scrollbars="none"