LoginSignup
10
8

More than 5 years have passed since last update.

Kotlinでdpやspを簡単に変換する拡張

Posted at

KotlinのExtensionを利用して以下のようにdp, spに変換することができます。

textView.textSize = 10f.sp

view.layoutParams = LayoutParams(
                LayoutParams.MATCH_PARENT,
                100.dp)

プロジェクト内に以下のファイルを置くとプロジェクト内のどこからでも使用できます。

MyUtil.kt
package com.yourapp.util // <- ここは各自のパッケージ名に変更

import android.content.res.Resources
import android.util.TypedValue
import android.util.TypedValue.applyDimension

val Float.dp get() = applyDimension(TypedValue.COMPLEX_UNIT_DIP, this, Resources.getSystem().displayMetrics)
val Float.sp get() = applyDimension(TypedValue.COMPLEX_UNIT_SP, this, Resources.getSystem().displayMetrics)
val Int.dp get() = toFloat().dp.toInt()
val Int.sp get() = toFloat().sp.toInt()
10
8
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
10
8