fix bug chọn thời gian khởi hành / kết thúc ( chuyến đi )

This commit is contained in:
2025-12-31 15:48:44 +07:00
parent 88bdaeb3a6
commit 940e108e75

View File

@@ -348,8 +348,8 @@ export default function TripDurationPicker({
handleOpenEndTimePicker
)}
{/* Unified Picker Modal */}
{activePicker && (
{/* iOS: Modal wrapper with spinner */}
{activePicker && Platform.OS === "ios" && (
<Modal transparent animationType="fade" visible={!!activePicker}>
<View style={styles.modalOverlay}>
<View
@@ -373,7 +373,7 @@ export default function TripDurationPicker({
<DateTimePicker
value={isStartPicker ? tempStartDate : tempEndDate}
mode={isTimePicker ? "time" : "date"}
display={Platform.OS === "ios" ? "spinner" : "default"}
display="spinner"
onChange={
isStartPicker
? handleStartPickerChange
@@ -385,8 +385,10 @@ export default function TripDurationPicker({
: undefined
}
minimumDate={
!isStartPicker && !isTimePicker
? startDate || undefined
!isTimePicker
? isStartPicker
? new Date()
: startDate || new Date()
: undefined
}
themeVariant={colorScheme}
@@ -397,6 +399,28 @@ export default function TripDurationPicker({
</View>
</Modal>
)}
{/* Android: Native dialog (no Modal wrapper needed) */}
{activePicker && Platform.OS === "android" && (
<DateTimePicker
value={isStartPicker ? tempStartDate : tempEndDate}
mode={isTimePicker ? "time" : "date"}
display="default"
onChange={
isStartPicker ? handleStartPickerChange : handleEndPickerChange
}
maximumDate={
isStartPicker && !isTimePicker ? endDate || undefined : undefined
}
minimumDate={
!isTimePicker
? isStartPicker
? new Date()
: startDate || new Date()
: undefined
}
/>
)}
</View>
);
}