Skip to content

Commit d045a38

Browse files
authored
update layout on orientation change (#1637)
1 parent 00b8afe commit d045a38

File tree

1 file changed

+8
-1
lines changed

1 file changed

+8
-1
lines changed

src/components/segmentedControl/index.tsx

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ import {asBaseComponent} from '../../commons/new';
1414
import View from '../view';
1515
import Segment, {SegmentedControlItemProps as SegmentProps} from './segment';
1616
import {Constants} from 'helpers';
17+
import {useOrientation} from 'hooks';
1718

1819
const BORDER_WIDTH = 1;
1920
const TIMING_CONFIG = {
@@ -105,6 +106,13 @@ const SegmentedControl = (props: SegmentedControlProps) => {
105106
const segmentedControlHeight = useSharedValue(0);
106107
const segmentsCounter = useRef(0);
107108

109+
useOrientation({
110+
onOrientationChange: () => {
111+
segmentsCounter.current = 0;
112+
segmentsStyle.value = [];
113+
}
114+
});
115+
108116
// eslint-disable-next-line react-hooks/exhaustive-deps
109117
const changeIndex = useCallback(_.throttle(() => {
110118
onChangeIndex?.(animatedSelectedIndex.value);
@@ -135,7 +143,6 @@ const SegmentedControl = (props: SegmentedControlProps) => {
135143
segmentsCounter.current++;
136144

137145
if (segmentsCounter.current === segments?.length) {
138-
animatedSelectedIndex.value = initialIndex;
139146
segmentsStyle.value = [...segmentsStyle.value];
140147
}
141148
},

0 commit comments

Comments
 (0)