語言

ISharedPreferencesEditor.Apply 方法

定義

將你的偏好設定變更從這個編輯器提交回 SharedPreferences 它正在編輯的物件。

[Android.Runtime.Register("apply", "()V", "GetApplyHandler:Android.Content.ISharedPreferencesEditorInvoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null")]
public void Apply();
[<Android.Runtime.Register("apply", "()V", "GetApplyHandler:Android.Content.ISharedPreferencesEditorInvoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null")>]
abstract member Apply : unit -> unit
屬性

備註

將你的偏好設定變更從這個編輯器提交回 SharedPreferences 它正在編輯的物件。 這會以原子方式執行所要求的修改,取代目前 SharedPreferences 中的部分。

請注意,當兩位編輯同時修改偏好設定時,最後一個呼叫「套用」的人會獲勝。

與 #commit不同,後者會同步將偏好寫入持久儲存,會 #apply 立即提交到記憶體 SharedPreferences 內,但會開始非同步提交磁碟,且不會收到任何失敗通知。 如果其他編輯器SharedPreferences在 a #commit 尚未完成時執行常規#apply任務,該編輯器#commit會阻塞直到所有非同步提交完成,連同提交本身也都完成。

由於 SharedPreferences 實例是程序中的單例,如果你已經忽略回傳值,可以安全地將任何實例 #commit 替換為 #apply 。

你不需要擔心 Android 元件生命週期及其與 apply() 寫入磁碟的互動。 這個框架會確保在切換狀態前,從飛行中寫入完成 apply() 。

SharedPreferences.Editor 介面並不預期會直接實作。 不過,如果你之前有實作過,現在又遇到漏掉 apply()錯誤,你可以直接從 #commitapply()。

Java 文件 android.content.SharedPreferences.Editor.apply()。

本頁部分內容為基於 Open Source Project 所創建與分享的作品,並依授權條款所描述的使用進行修改。

適用於