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

KotlinでAndroidにスクロール可能なTextViewを実装する方法【初心者向け解説】

はじめに

この記事では、Kotlinを使用してAndroidアプリでスクロール可能なTextViewを作成する方法を、サンプルコードとともにステップごとに解説します。長いテキストを画面内に収めて表示したい場合に役立つテクニックです。

手順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:id="@+id/activity_main"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:padding="5dp"
    tools:context=".MainActivity">
    <TextView
        android:id="@+id/textView"
        android:layout_width="wrap_content"
        android:layout_height="match_parent"
        android:scrollbars="vertical"
        android:textColor="@android:color/background_dark"
        android:textSize="48sp"
        android:textStyle="italic" />
</RelativeLayout>

ポイントは TextView に設定した android:scrollbars="vertical" 属性です。これにより、テキストが画面からはみ出したときに縦方向のスクロールバーが表示されるようになります。

手順3:MainActivity.ktの編集

src/MainActivity.kt に以下のコードを追加します。

import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.text.method.ScrollingMovementMethod
import android.widget.TextView
class MainActivity : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
        title = "KotlinApp"
        val textView: TextView = findViewById(R.id.textView)
        val text: String = "Your time is limited, so don’t waste it living someone else’s life. Don’t be trapped by dogma – which is living with the results of other people’s thinking. " + "If life were predictable it would cease to be life, and be without flavor. The big lesson in life, baby, is never be scared of anyone or anything."
        textView.text = text
        textView.movementMethod = ScrollingMovementMethod()
    }
}

ここでの重要なポイントは ScrollingMovementMethod() の設定です。TextView の movementMethod にこのクラスを指定することで、指でスワイプした際にテキストが実際にスクロールするようになります。レイアウト側の設定だけではスクロール操作は有効にならないため、必ずコード側でも設定しましょう。

手順4:AndroidManifest.xmlの確認

androidManifest.xml に以下のコードを追加します。

<?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端末がパソコンに接続されているものとします。Android Studioからアプリを実行するには、プロジェクト内のアクティビティファイルを開き、ツールバーにある「Run」アイコン KotlinでAndroidにスクロール可能なTextViewを実装する方法【初心者向け解説】 をクリックします。表示された候補から接続済みのモバイルデバイスを選択すると、端末の画面にアプリが起動し、長いテキストがスクロール可能な状態で表示されます。

KotlinでAndroidにスクロール可能なTextViewを実装する方法【初心者向け解説】

まとめ

スクロール可能なTextViewを実装するには、レイアウトXMLで android:scrollbars="vertical" を設定し、Kotlinコード側で ScrollingMovementMethod() を適用するのが基本の手順です。わずか数行の追加で、長文テキストも快適に閲覧できるUIを実現できます。ぜひ自分のプロジェクトにも取り入れてみてください。

  1. Androidでスレッドを作成する方法を徹底解説!初心者向けサンプルコード付き

    Androidにおけるスレッドとは?スレッドとは、軽量なサブプロセスのことであり、UI(ユーザーインターフェース)を中断させることなくバックグラウンド処理を実行するために使用されます。Androidアプリ開発では、時間のかかる処理をメインスレッドから切り離すことで、アプリの応答性や操作性を維持することができます。本記事では、実際のサンプルコードを交えながら、Androidでスレッドを作成する方法をステップごとに分かりやすく解説します。手順1:Android Studioで新規プロジェクトを作成するまず、Android Studioを起動し、メニューから「File」→「New Project」を

  2. 【Android】スクロール可能なTextViewを作成する方法をわかりやすく解説

    はじめにこの記事では、Androidアプリでスクロール可能なTextViewを作成する方法を、サンプルコード付きで順を追って解説します。長い文章を画面内に収めて表示したい場合に役立つテクニックなので、ぜひ参考にしてください。実装のポイントスクロール可能なTextViewを実現するには、次の2点が重要です。レイアウトXMLで android:scrollbars=vertical を指定するJavaコード側で setMovementMethod(new ScrollingMovementMethod()) を呼び出すこの2つを組み合わせることで、テキストが画面からはみ出したときに縦方向へスクロー