Does an activity has inflate method?

79 Views Asked by At

I found at the internet the following code:

   package com.example.myapplication

import android.graphics.Paint
import android.graphics.Rect
import android.graphics.Typeface
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.text.Layout
import android.text.StaticLayout
import android.text.TextPaint
import android.util.Log
import com.example.myapplication.databinding.ActivityMainBinding
import kotlin.math.max

class MainActivity : AppCompatActivity() {

    private lateinit var binding: ActivityMainBinding

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        binding = ActivityMainBinding.inflate(layoutInflater)

        binding.button.setOnClickListener {
            var maxValue = 0f
            val longestText = "W 140-108"

            val painter = TextPaint()
            painter.isAntiAlias = true
            painter.textSize = 15 * resources.displayMetrics.density
            binding.result.layoutParams.width = painter.measureText(longestText).toInt()
            binding.result.text = longestText
        }
        setContentView(binding.root)
    }
}

I tried to understand the code but couldn't understand what dose the following code (also i didn't find the method inflate inside the Activity api

binding = ActivityMainBinding.inflate(layoutInflater)
0

There are 0 best solutions below