KotlinでAndroid用ソフトキーボードを開発する方法をわかりやすく解説
この記事では、Kotlinを使用してAndroidアプリでソフトキーボード(画面上キーボード)の入力を扱う方法を、実際のサンプルコードとともに段階的に解説します。EditTextへの入力内容を取得し、ボタンのタップでTextViewに表示するシンプルなデモを通じて、基本的な実装の流れを学べます。
ステップ1:Android Studioで新規プロジェクトを作成する
まず、Android Studioを起動し、メニューから「File」→「New Project」を選択します。必要な項目をすべて入力して、新しいプロジェクトを作成しましょう。
ステップ2:レイアウトファイル(activity_main.xml)にコードを追加する
次に、res/layout/activity_main.xml に以下のコードを記述します。このレイアウトには、テキスト入力用のEditText、入力内容を表示するためのButton、結果を表示するTextViewが配置されています。
<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"> <EditText android:id="@+id/editText" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_centerHorizontal="true" android:layout_marginTop="50dp" /> <Button android:id="@+id/btnShow" android:layout_height="wrap_content" android:layout_below="@id/editText" android:layout_centerInParent="true" android:layout_marginTop="5dp" android:onClick="showText" android:text="SHOW TEXT" /> <TextView android:id="@+id/textView" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@id/btnShow" android:layout_centerInParent="true" android:layout_marginTop="10dp" android:textColor="@android:color/background_dark" android:textSize="16sp" android:textStyle="bold" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerInParent="true" android:text="Soft KeyBoard" android:textColor="@android:color/holo_red_light" android:textSize="24sp" android:textStyle="bold" /> </RelativeLayout>
ステップ3:MainActivity.ktにコードを追加する
続いて、src/MainActivity.kt に以下のコードを記述します。「SHOW TEXT」ボタンがタップされると、showText() メソッドが呼び出され、EditTextに入力された文字列を取得してTextViewに表示します。
import android.os.Bundle
import android.view.View
import android.widget.EditText
import android.widget.TextView
import androidx.appcompat.app.AppCompatActivity
class MainActivity : AppCompatActivity() {
lateinit var editText: EditText
lateinit var textView: TextView
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
editText = findViewById(R.id.editText)
textView = findViewById(R.id.textView)
}
fun showText(view: View) {
val newText = editText.text.toString()
textView.text = newText
}
}
ステップ4:AndroidManifest.xmlを確認・編集する
最後に、androidManifest.xml に以下のコードを記述します。ここでは、MainActivityがアプリの起動アクティビティとして登録されています。
<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="https://schemas.android.com/apk/res/android" package="app.com.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」アイコンをクリックします。
表示される選択肢から自分のモバイルデバイスを選択すると、接続した端末にアプリが起動し、デフォルトの画面が表示されます。EditTextをタップするとソフトキーボードが立ち上がり、入力したテキストが「SHOW TEXT」ボタンのタップでTextViewに反映されることを確認できます。

-
Android用ソフトキーボード開発の基本を解説!入力アプリ作成のステップガイド
はじめに この記事では、Androidでソフトキーボードを使ったテキスト入力アプリを開発する手順を、ステップ形式でわかりやすく解説します。完成したアプリでは、EditTextに入力した文字列をボタン操作でTextViewに表示でき、入力時にはシステムのソフトキーボードが自動的に立ち上がります。 ステップ1:Android Studioで新規プロジェクトを作成する まずAndroid Studioを起動し、メニューからFile ⇒ New Projectを選択してください。必要な項目をすべて入力して、新しいプロジェクトを作成しましょう。 ステップ2:レイアウトファイル(activity_mai
-
KotlinでAndroidエミュレータのIPアドレスを取得する方法【初心者向け】
はじめに Kotlinを使えば、Wi-Fi接続情報から簡単にAndroidエミュレータや実機デバイスのIPアドレスを取得できます。この記事では、ボタンをタップすると現在のIPアドレスが画面に表示されるシンプルなサンプルアプリを作成しながら、具体的な手順をわかりやすく解説します。 仕組みとしては、WifiManagerから接続中のネットワーク情報を取得し、Formatter.formatIpAddress()メソッドで整数値として保持されているIPアドレスを「192.168.x.x」のような読みやすい文字列に変換する流れになります。 ステップ1:新規プロジェクトの作成 まずはAndroid St