Skip to content

Commit 00a98ea

Browse files
committed
Refactor : Use derivedStateOf for layoutInfo optimization
1 parent 718a74b commit 00a98ea

File tree

1 file changed

+3
-1
lines changed
  • timepicker/src/main/java/com/dongchyeon/timepicker/ui

1 file changed

+3
-1
lines changed

timepicker/src/main/java/com/dongchyeon/timepicker/ui/PickerItem.kt

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ import androidx.compose.material3.MaterialTheme
1111
import androidx.compose.material3.Text
1212
import androidx.compose.runtime.Composable
1313
import androidx.compose.runtime.LaunchedEffect
14+
import androidx.compose.runtime.derivedStateOf
1415
import androidx.compose.runtime.getValue
1516
import androidx.compose.runtime.mutableIntStateOf
1617
import androidx.compose.runtime.remember
@@ -116,7 +117,8 @@ internal fun PickerItem(
116117
.pointerInput(Unit) { detectVerticalDragGestures { change, _ -> change.consume() } }
117118
) {
118119
items(listScrollCount, key = { index -> index }) { index ->
119-
val layoutInfo = listState.layoutInfo
120+
val layoutInfo by remember { derivedStateOf { listState.layoutInfo } }
121+
120122
val viewportCenterOffset = layoutInfo.viewportStartOffset +
121123
(layoutInfo.viewportEndOffset - layoutInfo.viewportStartOffset) / 2
122124

0 commit comments

Comments
 (0)