Friday, 27 March 2020

How to create Dynamic Button | set background to Button | setClickListener to the Button using Kotlin

  • Create a new Button programmatically in Kotlin Android.
  var dynamicButton = Button(this)
dynamicButton.layoutParams=LinearLayout.LayoutParams
(LinearLayout.LayoutParams.WRAP_CONTENT,
LinearLayout.LayoutParams.WRAP_CONTENT)
dynamicButton.setPadding(20, 20, 20, 20)
dynamicButton.text = "Dynamic Button"
mainLayout.addView(dynamicButton)
  • Set OnClickListener for Button -Kotlin Android.
dynamicButton.setOnClickListener {    
/* Write your code here */    
Toast.makeText(this, "My Dynamic button onClick", Toast.LENGTH_LONG).show() }
Disable All Caps in Android Button – Kotlin Android.

dynamicButton.isAllCaps = false
  • How to create custom design for Button background in Kotlin Android.(in XML)
dynamicButton.background = getDrawable(R.drawable.btn_edge_color)

btn_edge_color.xml:-
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle">
    <corners android:radius="4dp" />
    <gradient
        android:angle="90"
        android:endColor="#FFFFFF"
        android:startColor="#FFFFFF" />
    <stroke
        android:width="4dp"
        android:color="#238da0" />
</shape>

  • How to set background color of a Button dynamically or pragmatically in android kotlin.
val bgDrawableIds = intArrayOf(
    R.drawable.btn_center_gradient,
    R.drawable.btn_edge_color,
    R.drawable.btn_gradient,
    R.drawable.btn_solid_color)
var button = findViewById(R.id.buttonBg) as Button
var intCol = 0button.setOnClickListener {    
button.background = getDrawable(bgDrawableIds[intCol % bgDrawableIds.size])
    intCol++;

No comments:

Post a Comment

how to change status bar color in jectpack compose.

 Step1: Go to MainActivity and do following: enableEdgeToEdge ( statusBarStyle = SystemBarStyle .light( Color . Green .h...