KeyboardTypeとimeActionによる変更まとめ - Android Jetpack Compose

# KeyboardType
<table>
  <thead>
    <tr>
      <th>KeyboardType</th>
      <th>特徴</th>
      <th>日本語表示可否</th>
      <th>英語表示</th>
    </tr>
  </thead>
  <tr>
    <td>
        <a src="https://developer.android.com/reference/kotlin/androidx/compose/ui/text/input/KeyboardType#Ascii()">
            Ascii
        </a>
    </td>
    <td>ASCII文字のみ入力可能</td>
    <td align="center">○</td>
    <td align="center">
        <img src="https://vegcale.com/home/wp-content/uploads/2025/04/Screenshot_20250418_164845.png">
    </td>
  </tr>
  <tr>
      <td>
        <a src="https://developer.android.com/reference/kotlin/androidx/compose/ui/text/input/KeyboardType#Decimal()">
            Decimal
        </a>
    </td>
    <td>数字、小数点、カンマ区切りが入力可能<br>「1,1,,,,1...」などアウトプットが正しいかは確認必須</td>
    <td align="center">×</td>
    <td align="center">
        <img src="https://vegcale.com/home/wp-content/uploads/2025/04/Screenshot_20250418_165722.png">
    </td>
  </tr>
  <tr>
      <td>
        <a src="https://developer.android.com/reference/kotlin/androidx/compose/ui/text/input/KeyboardType#Email()">
            Email
        </a>
    </td>
    <td>左下のキーが「@」に変更されるため、メールアドレス入力時に便利だが日本語表示が可能</td>
    <td align="center">○</td>
    <td align="center">
        <img src="https://vegcale.com/home/wp-content/uploads/2025/04/Screenshot_20250418_170212.png">
    </td>
  </tr>
  <tr>
      <td>
        <a src="https://developer.android.com/reference/kotlin/androidx/compose/ui/text/input/KeyboardType#Number()">
            Number
        </a>
    </td>
    <td>Decimalと同じ</td>
    <td align="center">×</td>
    <td align="center">
        <img src="https://vegcale.com/home/wp-content/uploads/2025/04/Screenshot_20250418_164536.png">
    </td>
  </tr>
  <tr>
      <td>
        <a src="https://developer.android.com/reference/kotlin/androidx/compose/ui/text/input/KeyboardType#NumberPassword()">
            NumberPassword
        </a>
    </td>
    <td>入力が数字のみのため、アウトプットが数字のみになる<br>名前に「パスワード」とあるが、入力値の「*」への置き換えは別途指定必須</td>
    <td align="center">×</td>
    <td align="center">
        <img src="https://vegcale.com/home/wp-content/uploads/2025/04/Screenshot_20250418_170428.png">
    </td>
  </tr>
  <tr>
      <td>
        <a src="https://developer.android.com/reference/kotlin/androidx/compose/ui/text/input/KeyboardType#Password()">
            Password
        </a>
    </td>
    <td>英語キーボードのみの表示と同じ</td>
    <td align="center">×</td>
    <td align="center">
        <img src="https://vegcale.com/home/wp-content/uploads/2025/04/Screenshot_20250418_170731.png">
    </td>
  </tr>
  <tr>
      <td>
        <a src="https://developer.android.com/reference/kotlin/androidx/compose/ui/text/input/KeyboardType#Phone()">
            Phone
        </a>
    </td>
    <td>携帯番号入力時に便利</td>
    <td align="center">×</td>
    <td align="center">
        <img src="https://vegcale.com/home/wp-content/uploads/2025/04/Screenshot_20250418_171728.png">
    </td>
  </tr>
  <tr>
      <td>
        <a src="https://developer.android.com/reference/kotlin/androidx/compose/ui/text/input/KeyboardType#Text()">
            Text
        </a>
    </td>
    <td>一般的なキーボード</td>
    <td align="center">○</td>
    <td align="center">
        <img src="https://vegcale.com/home/wp-content/uploads/2025/04/Screenshot_20250418_163739.png">
    </td>
  </tr>
  <tr>
      <td>
        <a src="https://developer.android.com/reference/kotlin/androidx/compose/ui/text/input/KeyboardType?_gl=1*uvaa62*_up*MQ..*_ga*Mjk4Nzk0OTUxLjE3NDQ5NTU5MzI.*_ga_6HH9YJMN9M*MTc0NDk2MDMwNS4yLjAuMTc0NDk2MDMwNS4wLjAuMTkyNjQ3NTU5Ng..#Unspecified()">
            Unspecified
        </a>
    </td>
    <td>Textと同じ</td>
    <td align="center">○</td>
    <td align="center">
        <img src="https://vegcale.com/home/wp-content/uploads/2025/04/Screenshot_20250418_163521.png">
    </td>
  </tr>
  <tr>
      <td>
        <a src="https://developer.android.com/reference/kotlin/androidx/compose/ui/text/input/KeyboardType#Uri()">
            Uri
        </a>
    </td>
    <td>左下のキーが「/」に変更されるため、URI入力時に便利だが日本語表示が可能</td>
    <td align="center">○</td>
    <td align="center">
        <img src="https://vegcale.com/home/wp-content/uploads/2025/04/Screenshot_20250418_164052.png">
    </td>
  </tr>
</table>

# imeAction
<table>
  <thead>
    <tr>
      <th>imeAction</th>
      <th>発火するKeyboardActions</th>
      <th>表示</th>
    </tr>
  </thead>
  <tr>
    <td>
        <a src="https://developer.android.com/reference/kotlin/androidx/compose/ui/text/input/ImeAction#Done()">
            Done
        </a>
    </td>
    <td>
        <a src="https://developer.android.com/reference/kotlin/androidx/compose/foundation/text/KeyboardActions#onDone()">
            onDone
        </a>
    </td>
    <td align="center">
        <img src="https://vegcale.com/home/wp-content/uploads/2025/04/Screenshot_20250418_172702.png">
    </td>
  </tr>
  <tr>
    <td>
        <a src="https://developer.android.com/reference/kotlin/androidx/compose/ui/text/input/ImeAction#Go()">
            Go
        </a>
    </td>
    <td>
        <a src="https://developer.android.com/reference/kotlin/androidx/compose/foundation/text/KeyboardActions#onGo()">
            onGo
        </a>
    </td>
    <td align="center">
        <img src="https://vegcale.com/home/wp-content/uploads/2025/04/Screenshot_20250418_172808.png">
    </td>
  </tr>
  <tr>
    <td>
        <a src="https://developer.android.com/reference/kotlin/androidx/compose/ui/text/input/ImeAction#Next()">
            Next
        </a>
    </td>
    <td>
        <a src="https://developer.android.com/reference/kotlin/androidx/compose/foundation/text/KeyboardActions#onNext()">
            onNext
        </a>
    </td>
    <td align="center">
        <img src="https://vegcale.com/home/wp-content/uploads/2025/04/Screenshot_20250418_172814.png">
    </td>
  </tr>
  <tr>
    <td>
        <a src="https://developer.android.com/reference/kotlin/androidx/compose/ui/text/input/ImeAction#Previous()">
            Previous
        </a>
    </td>
    <td>
        <a src="https://developer.android.com/reference/kotlin/androidx/compose/foundation/text/KeyboardActions#onPrevious()">
            onPrevious
        </a>
    </td>
    <td align="center">
        <img src="https://vegcale.com/home/wp-content/uploads/2025/04/Screenshot_20250418_172835.png">
    </td>
  </tr>
  <tr>
    <td>
        <a src="https://developer.android.com/reference/kotlin/androidx/compose/ui/text/input/ImeAction#Search()">
            Search
        </a>
    </td>
    <td>
        <a src="https://developer.android.com/reference/kotlin/androidx/compose/foundation/text/KeyboardActions#onSearch()">
            onSearch
        </a>
    </td>
    <td align="center">
        <img src="https://vegcale.com/home/wp-content/uploads/2025/04/Screenshot_20250418_172843.png">
    </td>
  </tr>
  <tr>
    <td>
        <a src="https://developer.android.com/reference/kotlin/androidx/compose/ui/text/input/ImeAction#Send()">
            Send
        </a>
    </td>
    <td>
        <a src="https://developer.android.com/reference/kotlin/androidx/compose/foundation/text/KeyboardActions#onSend()">
            onSend
        </a>
    </td>
    <td align="center">
        <img src="https://vegcale.com/home/wp-content/uploads/2025/04/Screenshot_20250418_172850.png">
    </td>
  </tr>
</table>