Android
 Computer >> コンピューター >  >> プログラミング >> Android

Kotlinを使ってAndroidアプリのCheckBoxの色を変更する方法【初心者向け解説】

この記事では、Kotlinを使用してAndroidアプリ内のCheckBox(チェックボックス)の色を変更する方法を、サンプルコード付きでわかりやすく解説します。ボタンをタップしたタイミングで、チェックボックスのテキスト色と背景色を動的に切り替えるシンプルな実装例です。

完成イメージ

画面中央に配置されたチェックボックスの下にある「Change Color」ボタンをタップすると、チェックボックスのテキストがマゼンタ色になり、背景が薄い緑色に変化します。

ステップ1:新規プロジェクトを作成する

Android Studioを開き、「File → New Project」から新しいプロジェクトを作成します。必要な項目を入力してプロジェクトの雛形を生成してください。

ステップ2:レイアウトファイル(res/layout/activity_main.xml)を編集する

以下のコードをactivity_main.xmlに追加します。TextView、CheckBox、ButtonをRelativeLayout上に配置しています。

<?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"
    tools:context=".MainActivity">
    <TextView
        android:id="@+id/text"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="70dp"
        android:background="#008080"
        android:padding="5dp"
        android:text="TutorialsPoint"
        android:textColor="#fff"
        android:textSize="24sp"
        android:textStyle="bold" />
    <TextView
        android:id="@+id/textView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerInParent="true"
        android:text="Click the check box"
        android:textColor="@android:color/holo_blue_dark"
        android:textSize="16sp"
        android:textStyle="bold" />
    <CheckBox
        android:id="@+id/checkbox"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@id/textView"
        android:layout_centerInParent="true"
        android:text="Check box" />
    <Button
        android:id="@+id/button"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@id/checkbox"
        android:layout_centerInParent="true"
        android:text="Change Color" />
</RelativeLayout>

ステップ3:MainActivity.ktに処理を実装する

次に、src/MainActivity.ktに以下のコードを追加します。ボタンがクリックされたときに、setTextColor()でテキスト色をマゼンタへ、setBackgroundColor()で背景色をカラーコード「#cbff75」(薄い緑)へ変更しています。

import android.graphics.Color
import android.os.Bundle
import android.widget.Button
import android.widget.CheckBox
import androidx.appcompat.app.AppCompatActivity
class MainActivity : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
        title = "KotlinApp"
        val checkBox: CheckBox = findViewById(R.id.checkbox)
        val button: Button = findViewById(R.id.button)
        button.setOnClickListener {
            checkBox.setTextColor(Color.MAGENTA)
            checkBox.setBackgroundColor(Color.parseColor("#cbff75"))
        }
    }
}

ステップ4:AndroidManifest.xmlを確認する

androidManifest.xmlには以下のように記述します。特別なパーミッションは不要で、通常のActivity宣言だけで動作します。

<?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端末をPCにUSB接続していることを確認し、Android StudioのツールバーにあるRun(実行)アイコンをクリックします。接続した実機を選択してアプリをインストールすると、下図のような初期画面が表示されます。

Kotlinを使ってAndroidアプリのCheckBoxの色を変更する方法【初心者向け解説】

画面上の「Change Color」ボタンをタップすると、チェックボックスの文字色がマゼンタに、背景色が薄い緑に即座に変化することを確認できます。

まとめ

このように、KotlinではsetTextColor()setBackgroundColor()を使うだけで、CheckBoxの見た目をプログラムから簡単に制御できます。Colorクラスの定義済みカラー(Color.MAGENTAなど)や、Color.parseColor()による16進カラーコード指定を組み合わせれば、柔軟にUIをカスタマイズ可能です。

  1. ActionBarActivityでActionBarの背景色を変更する方法

    この記事では、ActionBarActivityのActionBar(アクションバー)の背景色を変更する手順について解説します。テーマのスタイル定義を編集することで、アプリ全体のデザインに合わせたカスタマイズが可能になります。ステップ1:新規プロジェクトの作成Android Studioを起動し、「File」→「New Project」を選択して新しいプロジェクトを作成します。必要な項目をすべて入力してプロジェクトのセットアップを完了させてください。ステップ2:レイアウトファイルの編集res/layout/activity_main.xmlに以下のコードを追加します。<?xml vers

  2. Androidのオプションメニューの背景色を変更する方法を徹底解説

    Androidのオプションメニューの背景色を変更する方法この記事では、Androidアプリのオプションメニュー(オプションズメニュー)の背景色を変更する方法を、実際に動作するサンプルコードとともにステップごとに解説します。テーマ(styles.xml)にandroid:itemBackgroundを設定するだけで、メニューの背景色を簡単にカスタマイズできます。ステップ1:新規プロジェクトの作成まず、Android Studioで新しいプロジェクトを作成します。メニューからFile → New Projectを選択し、必要な項目をすべて入力してプロジェクトを作成しましょう。ステップ2:レイアウト