이 튜토리얼에서는 Kotlin을 활용해 안드로이드 앱에서 ListView 항목의 배경색을 변경하는 방법을 단계별로 살펴봅니다. 리스트 항목을 탭했을 때 해당 항목의 색상이 바뀌도록 구현하는 실전 예제입니다.
1단계 – 새 프로젝트 생성
Android Studio를 실행하고 File → New Project 메뉴로 이동한 뒤, 새 프로젝트 생성에 필요한 모든 정보를 입력하여 프로젝트를 만듭니다.
2단계 – activity_main.xml 레이아웃 작성
아래 코드를 res/layout/activity_main.xml 파일에 추가합니다.
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="https://schemas.android.com/apk/res/android" xmlns:tools="https://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:padding="8dp" tools:context=".MainActivity"> <ListView android:id="@+id/listView" android:layout_width="match_parent" android:layout_height="match_parent" /> </RelativeLayout>
3단계 – MainActivity.kt에 로직 추가
다음 코드를 src/MainActivity.kt 파일에 작성합니다. 여기서는 ArrayAdapter로 운영체제 목록을 ListView에 연결하고, 항목 클릭 시 setOnItemClickListener를 통해 해당 항목의 배경색을 변경합니다.
import android.os.Build
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.widget.ArrayAdapter
import android.widget.ListView
class MainActivity : AppCompatActivity() {
var operatingSystem: Array<String> = arrayOf("Android", "IPhone", "WindowsMobile", "Blackberry", "WebOS", "Ubuntu", "Windows7", "Max OS X")
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
title = "KotlinApp"
val listView: ListView = findViewById(R.id.listView)
val adapter = ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, operatingSystem)
listView.adapter = adapter
listView.setOnItemClickListener { _, view, _, _ ->
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
view.setBackgroundColor(getColor(R.color.colorAccent))
}
}
}
}참고: getColor() 메서드는 마시멜로(API 23) 이상에서 동작하므로, 하위 버전 호환성을 위해 SDK 버전 체크가 포함되어 있습니다.
4단계 – AndroidManifest.xml 확인
아래와 같이 androidManifest.xml 파일에 MainActivity가 정상적으로 등록되어 있는지 확인합니다.
<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="https://schemas.android.com/apk/res/android" package="com.example.q11"> <application android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:roundIcon="@mipmap/ic_launcher_round" android:supportsRtl="true" android:theme="@style/AppTheme"> <activity android:name=".MainActivity"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application> </manifest>
앱 실행 및 결과 확인
이제 애플리케이션을 실행해 보겠습니다. 실제 안드로이드 기기가 컴퓨터에 연결되어 있다는 것을 전제로 진행합니다. Android Studio에서 프로젝트의 액티비티 파일 중 하나를 연 후, 상단 툴바의 Run 아이콘을 클릭하세요.

실행 옵션에서 자신의 모바일 기기를 선택하면, 기기 화면에 기본 목록이 표시됩니다.

목록에서 항목을 탭하면 해당 항목의 배경색이 colorAccent 색상으로 즉시 변경되는 것을 확인할 수 있습니다. 이 방식을 응용하면 선택된 항목 강조, 다중 선택 표시 등 다양한 UI 인터랙션을 쉽게 구현할 수 있습니다.