Skip to content

Commit 9b5a631

Browse files
authored
fix(android): spinner buttons were invisible (#673)
1 parent bb5ed6f commit 9b5a631

File tree

4 files changed

+20
-9
lines changed

4 files changed

+20
-9
lines changed

android/src/main/java/com/reactcommunity/rndatetimepicker/MinuteIntervalSnappableTimePickerDialog.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@ public MinuteIntervalSnappableTimePickerDialog(
3434
RNTimePickerDisplay display
3535
) {
3636
super(context, listener, hourOfDay, minute, is24HourView);
37+
setCanceledOnTouchOutside(true);
3738
mTimePickerInterval = minuteInterval;
3839
mTimeSetListener = listener;
3940
mDisplay = display;
@@ -51,6 +52,7 @@ public MinuteIntervalSnappableTimePickerDialog(
5152
RNTimePickerDisplay display
5253
) {
5354
super(context, theme, listener, hourOfDay, minute, is24HourView);
55+
setCanceledOnTouchOutside(true);
5456
mTimePickerInterval = minuteInterval;
5557
mTimeSetListener = listener;
5658
mDisplay = display;

android/src/main/java/com/reactcommunity/rndatetimepicker/RNDismissableDatePickerDialog.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,7 @@ public RNDismissableDatePickerDialog(
4040
int dayOfMonth,
4141
RNDatePickerDisplay display) {
4242
super(context, callback, year, monthOfYear, dayOfMonth);
43+
setCanceledOnTouchOutside(true);
4344
fixSpinner(context, year, monthOfYear, dayOfMonth, display);
4445
}
4546

@@ -52,6 +53,7 @@ public RNDismissableDatePickerDialog(
5253
int dayOfMonth,
5354
RNDatePickerDisplay display) {
5455
super(context, theme, callback, year, monthOfYear, dayOfMonth);
56+
setCanceledOnTouchOutside(true);
5557
fixSpinner(context, year, monthOfYear, dayOfMonth, display);
5658
}
5759

android/src/main/res/values/styles.xml

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
11
<resources xmlns:tools="http://schemas.android.com/tools">
2-
<style name="SpinnerDatePickerDialog" parent="Theme.AppCompat.Light.Dialog" tools:targetApi="lollipop">
2+
<style name="SpinnerDatePickerDialog" tools:targetApi="lollipop">
33
<item name="android:datePickerStyle">@style/SpinnerDatePickerStyle</item>
4+
<item name="android:windowIsFloating">true</item>
45
</style>
56

6-
<style name="SpinnerDatePickerStyle" parent="android:Widget.Material.Light.DatePicker" tools:targetApi="lollipop">
7+
<style name="SpinnerDatePickerStyle" parent="android:Widget.Material.DatePicker" tools:targetApi="lollipop">
78
<item name="android:datePickerMode">spinner</item>
89
</style>
910

@@ -24,11 +25,12 @@
2425
<item name="android:timePickerMode">clock</item>
2526
</style>
2627

27-
<style name="SpinnerTimePickerDialog" parent="Theme.AppCompat.Light.Dialog" tools:targetApi="lollipop">
28+
<style name="SpinnerTimePickerDialog" tools:targetApi="lollipop">
2829
<item name="android:timePickerStyle">@style/SpinnerTimePickerStyle</item>
30+
<item name="android:windowIsFloating">true</item>
2931
</style>
3032

31-
<style name="SpinnerTimePickerStyle" parent="android:Widget.Material.Light.TimePicker" tools:targetApi="lollipop">
33+
<style name="SpinnerTimePickerStyle" parent="android:Widget.Material.TimePicker" tools:targetApi="lollipop">
3234
<item name="android:timePickerMode">spinner</item>
3335
</style>
3436
</resources>

example/App.js

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -101,11 +101,16 @@ export const App = () => {
101101
setShow(false);
102102
}
103103
if (event.type === 'dismissed') {
104-
Alert.alert('picker was dismissed', undefined, [
105-
{
106-
text: 'great',
107-
},
108-
]);
104+
Alert.alert(
105+
'picker was dismissed',
106+
undefined,
107+
[
108+
{
109+
text: 'great',
110+
},
111+
],
112+
{cancelable: true},
113+
);
109114
return;
110115
}
111116

0 commit comments

Comments
 (0)