SwiftUIの基本を身につけたい方はこちら

【SwiftUI】ListのDeleteボタンの文字を「削除」に変更する方法~.swipeActionsを使う方法と.onDeleteを使って「削除」に変更する方法~

この記事では、SwiftUIでListの.onDeleteボタンの「Delete」というところを「削除」に変更する方法を紹介していきたいと思います。

このような感じで「削除」に変更します。

変更する方法としては、2パターンあります。

  1. 削除ボタンを.swipeActionsで自作する
  2. Localizationsに言語を変更する

パターン1:削除ボタンを.swipeActionsで自作する

こちらの方法は、そもそも、.onDeleteを使わず、スワイプした時につけられるアクションの.swipeActionsをDeleteボタンっぽくする方法です。この方法は簡単なのですが、削除処理を自分で書かなければならいので、少しコード量が増えてしまいます。

List {
    ForEach(fruits, id: \.self) { fruit in
        Text(fruit)
    }
    .swipeActions(edge: .trailing) {
        Button {
            // 処理
        } label: {
            Text("削除")
        }
        .tint(.red)
    }
}

削除以外に、ゴミ箱アイコンとかにも変えられたり色々と自由に変更することができます。

パターン2:Localizationsに言語を変更する

こちらの方法は、多言語対応みたいな感じでLocalizationsを英語から日本語に変更します。ので、日本以外にもリリースする方はお勧めしません。

STEP.1

まずは、Localizationsに言語を追加します。

①プロジェクト名をクリック
②PROJECTを選択
③Infoを選択
④プラスボタンをクリック

STEP.2

Japanese(ja)を選択

次に、developmentRegionの値を書き換えるので、project.pbxprojを開きます。

①プロジェクト名のところで右クリック
②Show in Finderをクリック

STEP.3

①xxx.xcodeprojを右クリック
②パッケージの内容を表示をクリック

STEP.4

①project.pbxprojを右クリック
このアプリケーションで開く > テキストエディット.appを選択(Xcode以外のエディターで開く)

STEP.5

command + fを押して、developmentRegionで検索します。

STEP.6

developmentRegion = en;というところを、developmentRegion = ja;に変更してください。

STEP.7

書き換えたら必ずcommand + sで保存してください。保存したらそのウィンドウは閉じてOKです。

これで、「削除」に変わったと思います。実機で確認してみましょう。

評価