如何使用 Kotlin 在 Android 中的点击事件上绘制边框?
有时我们希望通过在项目上显示边框来向用户显示他们单击了项目。因此,为此,我们需要创建两个可绘制资源文件,一个用于项目的普通背景,另一个用于边框。下面给出了一个示例视频,以了解我们将在本文中做什么。请注意,我们将使用Kotlin语言来实现这个项目。
分步实施
第 1 步:创建一个新项目
要在 Android Studio 中创建新项目,请参阅在 kotlin 的 android studio 中创建新项目。
第 2 步:使用 activity_main.xml 文件
导航到app > res > layout > activity_main.xml并将以下代码添加到该文件。下面是activity_main.xml文件的代码。
XML
XML
XML
Kotlin
package com.ayush.gfgitemselect
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.widget.Button
import android.widget.TextView
class MainActivity : AppCompatActivity() {
// Initializing the views
lateinit var option1: TextView
lateinit var option2: TextView
lateinit var option3: TextView
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
// Binding the views
option1 = findViewById(R.id.textView2)
option2 = findViewById(R.id.textView3)
option3 = findViewById(R.id.textView4)
// setting the normal background for the items
option1.setBackgroundResource(R.drawable.item_background)
option2.setBackgroundResource(R.drawable.item_background)
option3.setBackgroundResource(R.drawable.item_background)
// setting the background when item is clicked
option1.setOnClickListener {
option1.setBackgroundResource(R.drawable.on_item_select)
}
option2.setOnClickListener {
option2.setBackgroundResource(R.drawable.on_item_select)
}
option3.setOnClickListener {
option3.setBackgroundResource(R.drawable.on_item_select)
}
}
}
第 3 步:创建可绘制资源文件
参考这篇文章在 Android Studio 中创建 Drawable Resource XML File 并创建 Drawable Resource XML File。 item_background.xml的布局文件
XML
单击项目的on_item_select.xml的布局。
XML
第 4 步:使用 MainActivity.kt 文件
转到MainActivity.kt文件并参考以下代码。下面是 MainActivity.kt 文件的代码。代码中添加了注释以更详细地理解代码。
科特林
package com.ayush.gfgitemselect
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.widget.Button
import android.widget.TextView
class MainActivity : AppCompatActivity() {
// Initializing the views
lateinit var option1: TextView
lateinit var option2: TextView
lateinit var option3: TextView
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
// Binding the views
option1 = findViewById(R.id.textView2)
option2 = findViewById(R.id.textView3)
option3 = findViewById(R.id.textView4)
// setting the normal background for the items
option1.setBackgroundResource(R.drawable.item_background)
option2.setBackgroundResource(R.drawable.item_background)
option3.setBackgroundResource(R.drawable.item_background)
// setting the background when item is clicked
option1.setOnClickListener {
option1.setBackgroundResource(R.drawable.on_item_select)
}
option2.setOnClickListener {
option2.setBackgroundResource(R.drawable.on_item_select)
}
option3.setOnClickListener {
option3.setBackgroundResource(R.drawable.on_item_select)
}
}
}
所以,我们的应用程序已经准备好了。我们可以看到输出。
输出: