“Установить маржу программно Android Kotlin” Ответ

SET MARGE PROCTORGALLY Kotlin Android

val param = btnClickMe.layoutParams as ViewGroup.MarginLayoutParams
param.setMargins(10,10,10,10)
btnClickMe.layoutParams = param // Tested!! - You need this line for the params to be applied.
Helpless Hornet

Установить маржу программно Android Kotlin

fun View.margin(left: Float? = null, top: Float? = null, right: Float? = null, bottom: Float? = null) {
    layoutParams<ViewGroup.MarginLayoutParams> {
        left?.run { leftMargin = dpToPx(this) }
        top?.run { topMargin = dpToPx(this) }
        right?.run { rightMargin = dpToPx(this) }
        bottom?.run { bottomMargin = dpToPx(this) }
    }
}

inline fun <reified T : ViewGroup.LayoutParams> View.layoutParams(block: T.() -> Unit) {
    if (layoutParams is T) block(layoutParams as T)
}

fun View.dpToPx(dp: Float): Int = context.dpToPx(dp)
fun Context.dpToPx(dp: Float): Int = TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, dp, resources.displayMetrics).toInt()
Stockholm

Ответы похожие на “Установить маржу программно Android Kotlin”

Вопросы похожие на “Установить маржу программно Android Kotlin”

Больше похожих ответов на “Установить маржу программно Android Kotlin” по Kotlin

Смотреть популярные ответы по языку

Смотреть другие языки программирования