Skip to content

Commit 9b762df

Browse files
authored
Merge pull request #110
Slider added to sample app
2 parents 85d9b0c + 875f005 commit 9b762df

File tree

3 files changed

+36
-0
lines changed

3 files changed

+36
-0
lines changed

app/src/main/java/no/nordicsemi/android/common/test/main/page/BasicViewsPage.kt

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,10 +47,12 @@ import androidx.compose.material3.Card
4747
import androidx.compose.material3.Checkbox
4848
import androidx.compose.material3.MaterialTheme
4949
import androidx.compose.material3.OutlinedCard
50+
import androidx.compose.material3.Slider
5051
import androidx.compose.material3.Switch
5152
import androidx.compose.material3.Text
5253
import androidx.compose.runtime.Composable
5354
import androidx.compose.runtime.getValue
55+
import androidx.compose.runtime.mutableFloatStateOf
5456
import androidx.compose.runtime.mutableStateOf
5557
import androidx.compose.runtime.saveable.rememberSaveable
5658
import androidx.compose.runtime.setValue
@@ -67,6 +69,7 @@ import no.nordicsemi.android.common.navigation.Navigator
6769
import no.nordicsemi.android.common.test.R
6870
import no.nordicsemi.android.common.test.simple.Hello
6971
import no.nordicsemi.android.common.theme.NordicTheme
72+
import no.nordicsemi.android.common.ui.view.NordicSliderDefaults
7073
import no.nordicsemi.android.common.ui.view.PagerViewItem
7174
import javax.inject.Inject
7275

@@ -172,6 +175,18 @@ private fun OtherWidgets() {
172175

173176
Switch(checked = checkedSwitch, onCheckedChange = { checkedSwitch = it })
174177
}
178+
179+
var sliderValue by rememberSaveable { mutableFloatStateOf(5.0f) }
180+
Text(
181+
text = stringResource(id = R.string.slider, sliderValue.toInt()),
182+
)
183+
Slider(
184+
value = sliderValue,
185+
valueRange = 0.0f..10.0f,
186+
onValueChange = { sliderValue = it },
187+
steps = 9,
188+
colors = NordicSliderDefaults.colors()
189+
)
175190
}
176191
}
177192

app/src/main/res/values/strings.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -70,6 +70,7 @@
7070
<string name="action_dialog">Open Dialog</string>
7171

7272
<string name="option">Important option</string>
73+
<string name="slider">Value: %d</string>
7374

7475
<string name="hello">Hello!</string>
7576
<string name="hello_param">Param: %d</string>
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
package no.nordicsemi.android.common.ui.view
2+
3+
import androidx.compose.material3.MaterialTheme
4+
import androidx.compose.material3.SliderColors
5+
import androidx.compose.material3.SliderDefaults
6+
import androidx.compose.runtime.Composable
7+
8+
/**
9+
* Object to hold defaults Nordic colors used by Slider.
10+
*/
11+
object NordicSliderDefaults {
12+
13+
@Composable
14+
fun colors(): SliderColors = SliderDefaults.colors(
15+
activeTickColor = MaterialTheme.colorScheme.onPrimary,
16+
inactiveTickColor = MaterialTheme.colorScheme.primary,
17+
activeTrackColor = MaterialTheme.colorScheme.primary,
18+
inactiveTrackColor = MaterialTheme.colorScheme.primaryContainer,
19+
)
20+
}

0 commit comments

Comments
 (0)