import
android.os.Bundle
import
androidx.activity.ComponentActivity
import
androidx.activity.compose.setContent
import
androidx.compose.foundation.layout.Column
import
androidx.compose.foundation.layout.padding
import
androidx.compose.material.Surface
import
androidx.compose.material.Text
import
androidx.compose.runtime.Composable
import
androidx.compose.ui.Modifier
import
androidx.compose.ui.graphics.Color
import
androidx.compose.ui.text.SpanStyle
import
androidx.compose.ui.text.buildAnnotatedString
import
androidx.compose.ui.text.style.BaselineShift
import
androidx.compose.ui.text.withStyle
import
androidx.compose.ui.unit.dp
import
androidx.compose.ui.unit.sp
import
com.example.jetpack_playground.ui.theme.Jetpack_playgroundTheme
class
MainActivity : ComponentActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super
.onCreate(savedInstanceState)
setContent {
Jetpack_playgroundTheme {
Surface(color = Color.White) {
Column(modifier = Modifier.padding(
10
.dp)) {
superScriptAndSubscript()
}
}
}
}
}
}
@Composable
fun superScriptAndSubscript() {
val superscript = SpanStyle(
baselineShift = BaselineShift.Superscript,
fontSize =
16
.sp,
color = Color.Red
)
val subscript = SpanStyle(
baselineShift = BaselineShift.Subscript,
fontSize =
16
.sp,
color = Color.Blue
)
Column {
Text(
fontSize =
20
.sp,
text = buildAnnotatedString {
append(
"E = mc"
)
withStyle(superscript) {
append(
"2"
)
}
}
)
Text(
fontSize =
20
.sp,
text = buildAnnotatedString {
append(
"CH"
)
withStyle(subscript) {
append(
"4"
)
}
append(
" + H"
)
withStyle(subscript) {
append(
"2"
)
}
append(
"O = CO + 3H"
)
withStyle(subscript) {
append(
"2"
)
}
}
)
}
}