修改GPS显示窗口,卫星号可以显示全了,GPS测试窗口也可以适配C46 400x400圆屏。
authorSnickerSun <scy@incartech.cn>
Sat, 21 Aug 2021 13:14:11 +0000 (21:14 +0800)
committerSnickerSun <scy@incartech.cn>
Sat, 21 Aug 2021 13:14:11 +0000 (21:14 +0800)
app/src/main/java/com/ic/protocolSrv/GPSActivity.java
app/src/main/java/com/ic/protocolSrv/SnrHistogramView.java

index 77a9b50..ae3b9a8 100644 (file)
@@ -12,15 +12,20 @@ import android.support.annotation.NonNull;
 import android.support.v7.app.AppCompatActivity;
 import android.support.v7.widget.LinearLayoutManager;
 import android.support.v7.widget.RecyclerView;
+import android.view.Display;
 import android.view.View;
+import android.view.ViewGroup;
+import android.view.Window;
 import android.view.WindowManager;
 import android.widget.TextView;
 
 import com.ic.protocolSrv.NMEAListener.location_callback;
 import com.ic.protocolSrv.bean.ICLocation;
+import com.ic.protocolSrv.utils.ICLogger;
 import com.ic.protocolSrv.utils.LocationSnrAdapter;
 import com.ic.protocolSrv.utils.SnrEntriy;
 import com.ic.protocolSrv.utils.TimeUtil;
+import com.ic.protocolSrv.utils.Util;
 import com.ic.protocolSrv.utils.WakeLockUtil;
 
 import java.util.ArrayList;
@@ -37,6 +42,19 @@ public class GPSActivity extends Activity implements location_callback {
     final LocationSnrAdapter adapter = new LocationSnrAdapter(testSnrEntriyDate(null));
     private Handler mHandler = null;
     ICLocation.GPS_locationStatus g_gps_status=null;
+
+    void resizeSquare(){
+        if (Util.needResizeSquare()){
+            Display display = getWindowManager().getDefaultDisplay(); // 为获取屏幕宽、高
+            Window window = getWindow();
+            ViewGroup.LayoutParams windowLayoutParams = window.getAttributes(); // 获取对话框当前的参数值
+            int width = display.getWidth();
+            int height = display.getHeight();
+            windowLayoutParams.width = (int)(width*0.8);//(int) (display.getWidth() * 0.7); // 宽度设置为屏幕的0.95
+            windowLayoutParams.height = (int)(height*0.8);//(int) (display.getHeight() * 0.6); // 高度设置为屏幕的0.6
+            ICLogger.d("Resize to " + windowLayoutParams.width +"X" + windowLayoutParams.height);
+        }
+    }
     @Override
     protected void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
@@ -89,6 +107,7 @@ public class GPSActivity extends Activity implements location_callback {
         }
 
         getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
+        resizeSquare();
     }
 
 
index 9187477..0b39f95 100644 (file)
@@ -87,7 +87,10 @@ public class SnrHistogramView extends View {
         float[] snrValue = measureTextWidth(mSnrValue, mTextPaint);
 
         float hv = getHistogramHeight(snrValue[1], snrNmber[1], mBL);
-
+        while(mWidth<snrNmber[0]) {
+            mTextPaint.setTextSize(mTextPaint.getTextSize()-2f);
+            snrNmber = measureTextWidth(mSnrNmber, mTextPaint);
+        }
         canvas.drawText(mSnrNmber, (mWidth - snrNmber[0]) / 2, mHeight, mTextPaint);
         canvas.drawText(mSnrValue, (mWidth - snrValue[0]) / 2, mHeight - snrNmber[1] - hv, mTextPaint);