新聞中心
什么是首選項(Preferences)?
首選項是指用戶在系統(tǒng)中可以自定義的一些設(shè)置,通常用于調(diào)整應(yīng)用程序的行為、外觀和功能,在Android應(yīng)用中,首選項通常以對話框的形式展示給用戶,用戶可以通過點擊對話框中的按鈕來修改設(shè)置,首選項的保存和讀取是通過SharedPreferences類來實現(xiàn)的。

成都創(chuàng)新互聯(lián)公司長期為成百上千家客戶提供的網(wǎng)站建設(shè)服務(wù),團隊從業(yè)經(jīng)驗10年,關(guān)注不同地域、不同群體,并針對不同對象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為謝家集企業(yè)提供專業(yè)的成都網(wǎng)站制作、成都網(wǎng)站設(shè)計,謝家集網(wǎng)站改版等技術(shù)服務(wù)。擁有十余年豐富建站經(jīng)驗和眾多成功案例,為您定制開發(fā)。
如何創(chuàng)建首選項界面?
1、在res/xml目錄下創(chuàng)建一個名為preferences.xml的文件,用于定義首選項界面的布局。
2、在Java代碼中創(chuàng)建一個繼承自PreferenceActivity的類,并重寫onCreate方法。
import android.os.Bundle;
import androidx.preference.PreferenceActivity;
import androidx.preference.PreferenceFragmentCompat;
import com.example.myapplication.R;
public class SettingsActivity extends PreferenceActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
addPreferencesFromResource(R.xml.preferences);
}
}
3、在AndroidManifest.xml文件中注冊SettingsActivity。
如何保存首選項的修改?
在Android中,首選項的保存和讀取是通過SharedPreferences類來實現(xiàn)的,以下是一個簡單的示例:
1、在PreferenceFragmentCompat中添加SharedPreferences實例。
import androidx.preference.PreferenceManager;
import com.example.myapplication.R;
import com.example.myapplication.preferences.MyPreferenceFragment;
import java.util.ArrayList;
import java.util.List;
import java.util.concurrent.atomic.AtomicInteger;
public class MyPreferenceFragment extends PreferenceFragmentCompat {
private AtomicInteger counter = new AtomicInteger(0);
private List keys = new ArrayList<>(); // 存儲已添加的首選項鍵值對的鍵名列表,避免重復(fù)添加相同的鍵值對時覆蓋舊值。
private SharedPreferences sharedPreferences; // SharedPreferences實例。
@Override
public void onCreatePreferences(Bundle savedInstanceState, String rootKey) {
setPreferencesFromResource(R.xml.preferences, rootKey); // 從XML文件中加載首選項界面布局。
init(); // 初始化SharedPreferences實例。
}
private void init() { // 初始化SharedPreferences實例,在此處添加SharedPreferences的相關(guān)配置,如文件路徑、版本號等,具體請參考官方文檔。 https://developer.android.com/guide/topics/data/data-storagepreferrences-files-get-set-and-save-data。
sharedPreferences = PreferenceManager.getDefaultSharedPreferences(requireContext()); // 通過Context獲取默認的SharedPreferences實例,若需要指定文件路徑等參數(shù),請使用其他構(gòu)造方法創(chuàng)建SharedPreferences實例,如:SharedPreferences preferences = getSharedPreferences("my_preferences", Context.MODE_PRIVATE);,為了避免重復(fù)添加相同的鍵值對時覆蓋舊值,需要將已添加的鍵名存儲在一個列表中,在此示例中,keys列表用于存儲已添加的鍵名,當添加新的首選項時,先判斷該鍵名是否已存在于列表中,若不存在則將其添加到列表中并添加到SharedPreferences中,否則,提示用戶該首選項已存在且未被覆蓋,更新UI顯示新添加的首選項及其當前值,具體實現(xiàn)細節(jié)請參考官方文檔。 https://developer.android.com/guide/topics/data/data-storagepreferrences-files-get-set-and-save-data。
網(wǎng)站題目:android的preference在哪
標題鏈接:http://m.fisionsoft.com.cn/article/cdphpsh.html


咨詢
建站咨詢
