Skip to content

Commit 0f88303

Browse files
committed
Improve sample to test properties
1 parent cd0ad67 commit 0f88303

File tree

1 file changed

+63
-6
lines changed
  • app/src/main/kotlin/com/holix/android/bottomsheetdialogcomposedemo

1 file changed

+63
-6
lines changed

app/src/main/kotlin/com/holix/android/bottomsheetdialogcomposedemo/MainActivity.kt

Lines changed: 63 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package com.holix.android.bottomsheetdialogcomposedemo
22

33
import android.os.Bundle
4+
import android.util.Log
45
import androidx.activity.compose.setContent
56
import androidx.appcompat.app.AppCompatActivity
67
import androidx.compose.foundation.isSystemInDarkTheme
@@ -28,15 +29,28 @@ class MainActivity : AppCompatActivity() {
2829
lightColors()
2930
}
3031
) {
32+
var dismissOnBackPress by rememberSaveable {
33+
mutableStateOf(true)
34+
}
35+
var dismissOnClickOutside by rememberSaveable {
36+
mutableStateOf(true)
37+
}
38+
var dismissWithAnimation by rememberSaveable {
39+
mutableStateOf(false)
40+
}
3141
var showBottomSheetDialog by rememberSaveable {
3242
mutableStateOf(false)
3343
}
3444
if (showBottomSheetDialog) {
3545
BottomSheetDialog(
3646
onDismissRequest = {
47+
Log.d("[BottomSheetDialog]", "onDismissRequest")
3748
showBottomSheetDialog = false
3849
},
3950
properties = BottomSheetDialogProperties(
51+
dismissOnBackPress = dismissOnBackPress,
52+
dismissOnClickOutside = dismissOnClickOutside,
53+
dismissWithAnimation = dismissWithAnimation,
4054
navigationBarColor = MaterialTheme.colors.surface
4155
)
4256
) {
@@ -57,12 +71,55 @@ class MainActivity : AppCompatActivity() {
5771
}
5872
}
5973
}
60-
Box(
61-
modifier = Modifier.fillMaxSize(),
62-
contentAlignment = Alignment.Center
63-
) {
64-
Button(onClick = { showBottomSheetDialog = true }) {
65-
Text(text = "Show")
74+
Surface {
75+
Box(
76+
modifier = Modifier.fillMaxSize(),
77+
contentAlignment = Alignment.Center
78+
) {
79+
Column(
80+
verticalArrangement = Arrangement.spacedBy(16.dp),
81+
horizontalAlignment = Alignment.CenterHorizontally
82+
) {
83+
Row(
84+
verticalAlignment = Alignment.CenterVertically,
85+
horizontalArrangement = Arrangement.spacedBy(8.dp)
86+
) {
87+
Text(text = "dismissOnBackPress")
88+
Switch(
89+
checked = dismissOnBackPress,
90+
onCheckedChange = {
91+
dismissOnBackPress = it
92+
}
93+
)
94+
}
95+
Row(
96+
verticalAlignment = Alignment.CenterVertically,
97+
horizontalArrangement = Arrangement.spacedBy(8.dp)
98+
) {
99+
Text(text = "dismissOnClickOutside")
100+
Switch(
101+
checked = dismissOnClickOutside,
102+
onCheckedChange = {
103+
dismissOnClickOutside = it
104+
}
105+
)
106+
}
107+
Row(
108+
verticalAlignment = Alignment.CenterVertically,
109+
horizontalArrangement = Arrangement.spacedBy(8.dp)
110+
) {
111+
Text(text = "dismissWithAnimation")
112+
Switch(
113+
checked = dismissWithAnimation,
114+
onCheckedChange = {
115+
dismissWithAnimation = it
116+
}
117+
)
118+
}
119+
Button(onClick = { showBottomSheetDialog = true }) {
120+
Text(text = "Show")
121+
}
122+
}
66123
}
67124
}
68125
}

0 commit comments

Comments
 (0)