Hel*_*oCW 4 kotlin android-jetpack-compose
我通过Android Studio 中的空撰写活动向导创建了一个新项目。
代码A是Android Studio生成的代码。
Text(text = "Hello $name!")显示默认字体样式的文本,我希望获取文本的大小和单位,例如16sp,在哪里可以找到这些信息?
代码A
class MainActivity : ComponentActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContent {
MyApplicationTheme {
Surface(
modifier = Modifier.fillMaxSize(),
color = MaterialTheme.colors.background
) {
Greeting("Android")
}
}
}
}
}
@Composable
fun Greeting(name: String) {
Text(text = "Hello $name!")
}
@Composable
fun MyApplicationTheme(
darkTheme: Boolean = isSystemInDarkTheme(),
content: @Composable () -> Unit
) {
val colors = if (darkTheme) {
DarkColorPalette
} else {
LightColorPalette
}
MaterialTheme(
colors = colors,
typography = Typography,
shapes = Shapes,
content = content
)
}
Run Code Online (Sandbox Code Playgroud)
您可以在这里查看。
https://developer.android.com/jetpack/compose/text
更改文本大小和字体样式
Text("Hello World", fontSize = 30.sp,fontStyle = FontStyle.Italic)
Run Code Online (Sandbox Code Playgroud)
Text 有一个 fontFamily 参数,允许设置可组合项中使用的字体。默认情况下,包括衬线、无衬线、等宽字体和草书字体系列。
可以使用TextLayoutResult获取前台样式
字体样式在TextLayoutInput -> TextStyle
Text("Hello World",
onTextLayout = { result: TextLayoutResult ->
Log.d(TAG, "FrontSize: "+ result.layoutInput.style.fontSize)
Log.d(TAG, "FrontStyle: "+ result.layoutInput.style.toString())
})
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1400 次 |
| 最近记录: |