
Theme.kt
package kr.co.fastcampus.part1.chapter5_5.ui.theme
import androidx.compose.foundation.isSystemInDarkTheme
import androidx.compose.material.MaterialTheme
import androidx.compose.material.MaterialTheme.colors
import androidx.compose.material.darkColors
import androidx.compose.material.lightColors
import androidx.compose.runtime.Composable
import androidx.compose.ui.graphics.Color
private val DarkColorPalette = darkColors(
primary = Purple200,
primaryVariant = Purple700,
secondary = Teal200
)
// 단계 2: `onSurface` 값을 할당합니다.
// `surface` 값도 할당해봅시다.
// 단계 3: `primary`와 `onPrimary` 값도 바꾸어봅시다.
private val LightColorPalette = lightColors(
primary = Color.Magenta,
onPrimary = Color.Cyan,
primaryVariant = Purple700,
secondary = Teal200,
surface = Color.Black,
onSurface = Color.White, // 짝
/* Other default colors to override
background = Color.White,
surface = Color.White,
onPrimary = Color.White,
onSecondary = Color.Black,
onBackground = Color.Black,
onSurface = Color.Black,
*/
)
@Composable
fun ThemeTestTheme(darkTheme: Boolean = isSystemInDarkTheme(), content: @Composable () -> Unit) {
val colors = LightColorPalette
MaterialTheme(
colors = colors,
typography = Typography,
shapes = Shapes,
content = content
)
}
MainActivity.kt
package kr.co.fastcampus.part1.chapter5_5
import android.os.Bundle
import androidx.activity.ComponentActivity
import androidx.activity.compose.setContent
import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.fillMaxSize
import androidx.compose.foundation.layout.padding
import androidx.compose.material.*
import androidx.compose.runtime.Composable
import androidx.compose.ui.Modifier
import androidx.compose.ui.tooling.preview.Preview
import androidx.compose.ui.unit.dp
import kr.co.fastcampus.part1.chapter5_5.ui.theme.ThemeTestTheme
class MainActivity : ComponentActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContent {
// 단계 1: ThemeTestTheme으로 이동합니다.
ThemeTestTheme {
Surface(
modifier = Modifier.fillMaxSize(),
color = MaterialTheme.colors.background
) {
Greeting()
}
}
}
}
}
@Composable
fun Greeting() {
Card(
modifier = Modifier.padding(8.dp)
) {
Column(
modifier = Modifier.padding(16.dp),
) {
Text("안녕하세요. 패스트캠퍼스")
Text("스안녕하세요. 패스트캠퍼")
Text("퍼스안녕하세요. 패스트캠")
Text("캠퍼스안녕하세요. 패스트")
Text("트캠퍼스안녕하세요. 패스")
Text("스트캠퍼스안녕하세요. 패")
Text("패스트캠퍼스안녕하세요.")
Button(onClick = {}) {
Text("버튼")
}
}
}
}
@Preview(showBackground = true)
@Composable
fun DefaultPreview() {
ThemeTestTheme {
Greeting()
}
}