fluttercommunity / fluttercommunity/flutter_webview_plugin
Android layout problem. 1px white line at right and bottom
- Lenguaje dominante
- Java
- Estrellas
- 1.5k
- Forks
- 938
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Descripción
## System info
Issue occurs on: Android
Plugin version: 0.3.10+1
Flutter doctor output:
```
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel dev, v1.14.4, on Mac OS X 10.15.2 19C57, locale en)
[✓] Android toolchain - develop for Android devices (Android SDK version 29.0.2)
[✓] Xcode - develop for iOS and macOS (Xcode 11.3.1)
[✓] Android Studio (version 3.5)
[✓] Connected device (2 available)
• No issues found!
```
## Steps to Reproduce
1. create a fresh project with only WebviewScaffold
2. enter a dark webpage url for ex. (https://www.blakeallendesign.com/)
3. voila. There is a 1px white line at right and there is 1px white line at bottom
## The layout of the webview scaffold is set in this file
_/Users/edex/.pub-cache/hosted/pub.dartlang.org/flutter_webview_plugin-0.3.10+1/android/src/main/java/com/flutter_webview_plugin/FlutterWebviewPlugin.java_
I think its a _pixel density calculation_' problem
```java
FrameLayout.LayoutParams params;
if (rc != null) {
params = new FrameLayout.LayoutParams(
dp2px(activity, rc.get("width").intValue() +1),
dp2px(activity, rc.get("height").intValue() +1)
);
params.setMargins(
dp2px(activity, rc.get("left").intValue()),
dp2px(activity, rc.get("top").intValue()),
0,0
);
```
### 0.5f is the default offset value I've tested with these values
0.0f lines become thicker 2x
1.0f lines appears at left and top this time
0.9f same as 0.5
0.99f same as 0.5
-0.5 same as 0.0f
```java
private int dp2px(Context context, float dp) {
final float scale = context.getResources().getDisplayMetrics().density;
return (int) (dp * scale + 0.5f);
}
```
#### The solution is to add +1 to width and heigh then the fractions doesnt matter
```
```
Guía de contribución
No hay ninguna guía de contribución indexada para este repositorio
Línea de trabajo
Comience en android/src/main/java/com/flutter_webview_plugin/FlutterWebviewPlugin.java, centrándose en los parámetros de diseño del scaffold de WebView y en la conversión dp2px mostrados en el informe. Reproduzca el problema con un proyecto Flutter nuevo, WebviewScaffold y una página web oscura como el ejemplo enlazado. Se considerará terminado cuando el Android WebView llene el scaffold sin las líneas blancas de 1px a la derecha y en la parte inferior.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- android, flutter, java
- Área
- mobile
- Tipo de issue
- Error
- Dificultad
- 2/5
- Tiempo estimado
- 1-3 horas
- Estado de actividad
- Estancado
- Claridad
- Bien especificado
- Aptitud para principiantes
- 35/100