2017-07-26 36 views
-5

TableViewに1行追加しました。私はアプリの更新後に、この行に赤いマーカーがあり、ユーザーは正確に何が追加されたのか分かりました。更新後に最初にこの行を選択した後に、マーカーを消さなければなりません。 初めてユーザーが新しい行を選択したかどうかを確認できますか?TableView行が最初に選択されたかどうかの確認

+0

これまでに何を試しましたか? –

+0

Charlie Fish、実際には何もありません。私が見つけることができるのは、アプリの最初の起動を確認する方法です。しかし、ユーザーは最初の起動時に新しい行を開くことはできません。 – Anna

+0

投稿する前にヘルプセンターを読むことをおすすめします。スタックオーバーフローは、他のすべてのリソースを試して、問題にかなりの労力をかけた後の最後の手段です。 –

答えて

1

あなたはこのようなセットを維持することができます。

var selectedOnce = Set<Int>() 

最初に選択したときは常に、選択したインデックスをこのセットに追加します。

selectedOnce.insert(index) 

何かがアプリごとに1回のために必要とされている場合は、それがすでに

 if selectedOnce.contains(indexToCheck) { 

} 

ように選択されたかどうかを確認し、次回、。つまり、次のアプリケーションの起動時には、ユーザーのデフォルトを使用することはできません。この

if UserDefaults.standard.bool(forKey: "alreadyClicked") { 

} 

ユーザーのデフォルトアプリの起動の間持続のようなもののユーザがすでに以前の起動で行われているかどうかを知るためのキーのためのチェック

UserDefaults.standard.set(true, forKey: "alreadyClicked") 

初めてtrueにキーを設定します。 希望に役立ちます。

+0

ありがとうございます。私はこのようなことを考えました。しかし、次回のアプリ実行は空になってしまいましたか?それとも、それは次のすべての実行のためにそれの価値を保存することは可能ですか? – Anna

+0

編集された回答をご覧ください。 –

+0

ありがとう!それは多くの助けとなりました。 – Anna

関連する問題