1. figmaから以下の情報を取得する
🎨 色(Color)
#RRGGBB または RGBA
不透明度(Opacity)
グラデーション
🔤 文字(Typography)
フォント名
サイズ(sp)
行間(lineHeight)
Font Weight
🔲 余白(Spacing)
padding / margin(dp)
コンポーネントの width/height
📐 角丸(Corner Radius)
dp
⭐ シャドウ(Elevation / shadow)
shadow の offset / blur / color
2.ザイントークンとして Android へ落とし込む
Figma の色・文字・spacing 情報をそのままコードに書くのではなく、
“テーマ” として一箇所にまとめる のがプロのやり方
Jetpack Compose のテーマ例(Theme.kt)
object AppColors {
val Primary = Color(0xFF4CAF50)
val Secondary = Color(0xFF03A9F4)
val TextPrimary = Color(0xFF333333)
}
object AppTypography {
val Title = TextStyle(
fontSize = 20.sp,
fontWeight = FontWeight.Bold
)
val Body = TextStyle(
fontSize = 14.sp
)
}
object AppRadius {
val Medium = 12.dp
}
object AppSpacing {
val Small = 8.dp
val Medium = 16.dp
}
3.Compose の UI 実装(Figma → Compose への変換)
Figma のボタンを例にします。
🎨 Figma のボタン例
幅:200
高さ:48
角丸:12
背景色:#4CAF50
テキスト:白、16sp、Medium
@Composable
fun AppButton(text: String, onClick: () -> Unit) {
Box(
modifier = Modifier
.size(width = 200.dp, height = 48.dp)
.background(AppColors.Primary, shape = RoundedCornerShape(AppRadius.Medium))
.clickable { onClick() },
contentAlignment = Alignment.Center
) {
Text(text, style = TextStyle(color = Color.White, fontSize = 16.sp))
}
}
これをcomposeとして使う
<Button
android:layout_width="200dp"
android:layout_height="48dp"
android:background="@drawable/rounded_button"
android:text="Button"
android:textSize="16sp"
android:textColor="@android:color/white" />