JessYanCoding / JessYanCoding/AndroidAutoSize

与compose共用时dialog没法适配

Đang mở
#353 9 bình luận 1 reaction 0 người được giao Xem trên GitHub
Ngôn ngữ chính
Java
Star
13.7k
Fork
2k
Chỉ số merge pull request
Không có pull request nào được merge trong 30 ngày

Mô tả

### Environment
- [x] Autosize Version: 1.2.1
- [x] Target Android Version: android 10.0
- [x] Device Model: honor10
- [x] Device Resolution: 2280 * 1080
- [x] Design Size On AndroidManifest: 1400 * 1400

### Bug Description:
我用compose写ui并用autosize进行适配发现dialog无法适配这个怎么解决

### Log:
D/AndroidAutoSize: The com.example.myapplication.MainActivity has been adapted!
MainActivity Info: isBaseOnWidth = true, designWidthInDp = 1400.000000, designWidthInSubunits = 1400.000000, targetDensity = 0.771429, targetScaledDensity = 0.771429, targetDensityDpi = 123, targetXdpi = 0.771429, targetScreenWidthDp = 1400, targetScreenHeightDp = 2722

### Screenshot
![image](https://user-images.githubusercontent.com/29787804/116205323-34445000-a770-11eb-9143-c5d3b203aca0.png)

### Related Code:
```kotlin
@Composable
fun Greeting(name: String) {
Dialog(onDismissRequest = { }) {
// Draw a rectangle shape with rounded corners inside the dialog
Box(
Modifier
.size(1200.dp, 50.dp)
.background(Color.White)
)
}
}
```

### Others:
```kotlin
我发现在包package androidx.compose.ui.window里这,
@Composable
private fun DialogLayout(
modifier: Modifier = Modifier,
content: @Composable () -> Unit
) {
Layout(
content = content,
modifier = modifier
) { measurables, constraints ->
val placeables = measurables.fastMap { it.measure(constraints) }
val width = placeables.fastMaxBy { it.width }?.width ?: constraints.minWidth
val height = placeables.fastMaxBy { it.height }?.height ?: constraints.minHeight
layout(width, height) {
placeables.fastForEach { it.placeRelative(0, 0) }
}
}
}
```
这段代码没有找到我输入的1200.dp

Hướng dẫn đóng góp

Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này

Đánh giá

Issue này chưa được đánh giá.

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.