Tag: sharedpreferences

如何使用共享首选项保存数据?

我是android application.i中的新开发人员使用共享偏好概念将数据从一个活动共享到另一个activity.i已经实现了如下代码 Main.java public class Main extends Activity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); TableLayout table=(TableLayout)findViewById(R.id.tableLayout1); table.removeAllViews(); String sName = null; for(int i=0;i”+sName); getSharedPreferences(“Values”, 0).edit().putString(“NAMES”,sName).commit(); name.setGravity(Gravity.LEFT); name.setTypeface(Typeface.MONOSPACE); row.addView(name); table.addView(row); } ((Button)findViewById(R.id.button1)).setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { Intent it=new Intent(Main.this,Main2.class); startActivity(it); } }); } 在这里,我打印一个名字十次,并以共享偏好保存 TextView name=new TextView(Main.this); name.setText(” HAI […]

使用SharedPreferences获取java.lang.nullPointerException

我正在尝试保存文件解析的日期,以便在下次用户打开应用程序时,可以在最后一个解析日期检查日期。 我使用共享首选项来保存数据并检索它,但收到错误。 这是代码: SharedPreferences settings = getPreferences(0); String today = new Date(System.currentTimeMillis()).toString(); SharedPreferences.Editor edit = settings.edit(); System.out.println(“******** Today : ” + today); edit.putString(“lastdate”, today); String fetch = settings.getString(“lastdate”, “0”); System.out.println(“******** Fetch : ” + fetch); txtTest.setText(fetch); 但我得到空指针错误,我错过了什么?

如何在oncreate之外使用SharedPreferences?

如何在没有oncreate的类中使用SharedPreferences ? 访问它时我得到空指针。 public class Ftr extends Activity { SharedPreferences preferences; Context ab=this; public void ft() { preferences = PreferenceManager.getDefaultSharedPreferences(ab); String result = preferences.getString(“F”,””); } } 我从另一个活动调用函数ft() Ftr只是一个类而不是一个活动。 如何在这种情况下使用SharedPreferences ?

Android如何从SharedPreference设置EditTextPreference的默认值?

这一次在同一个项目中我面临一个稍微具有挑战性的问题,在res / xml文件夹中的settings.xml文件中: 并在类文件UserData.java中: SharedPreferences storeWeightAndAge = getSharedPreferences(“WeightAndAgeStorage”, Context.MODE_PRIVATE); Editor store = storeWeightAndAge.edit(); store.putString(“weight”, weightData); store.putString(“age”, ageData); store.commit(); 我在这里要做的是将上面两个EditTextPreferences的android:defaultValue分别设置为SharedPreferences存储的weight和age 。 现在,我该怎么做呢? 编辑:提供了使用settings.xml文件的Settings.java文件: package com.example.drinkup; import android.content.SharedPreferences; import android.os.*; import android.preference.PreferenceFragment; import android.preference.PreferenceActivity; import android.preference.PreferenceManager; public class Settings extends PreferenceActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); addPreferencesFromResource(R.xml.settings); } }

Androidarrays与Gson的Sharedpreferences

我需要创建一个最近5个调用日期的数组。 我知道我必须在arrays上保存日期,但我不知道如何重新排序其他记录以将最后一个呼叫日期保留为第一条记录。 并且始终只保留5条记录 目标是保存最后一个调用字符串并添加到数组中,之后我重新排序并仅维护5条记录,之后我使用FlexJson创建一个字符串并保存在sharedpreferences上。 有谁有这个完整的过程? 在这里我正在做什么,但到处都是错误: 保存 SimpleDateFormat df = new SimpleDateFormat(“HH:mm:ss dd-MM-yyyy”, Locale.getDefault()); Calendar calendar = Calendar.getInstance(); String currentDateTimeString = df.format(calendar.getTime()); List textList = new ArrayList(); JSONSerializer ser = new JSONSerializer(); textList.add(currentDateTimeString); String jsonText = ser.deepSerialize(textList); editor.putString(“lastCall”, jsonText); editor.commit(); 读: String lastCall = callLogPreferences.getString(“lastCall”, null); JSONDeserializer<List> der = new JSONDeserializer(); List textList = der.deserialize(lastCall); […]

将ArrayList 保存到本地存储

哦,小伙子,所以我花了大约一个小时左右阅读并尝试在Android偏好设置和本地存储中存储可分配Parcelable Object的ArrayList的不同方法,现在我又回到原点。 顺便说一下,我已经下载并导入了Gson,而不是我可以让它工作。 基本上,我在一个名为taskList的ArrayList有一个类,即使用户关闭我的应用程序,我也需要保存它。 如果重要的话, Object包含一个String ,一些Ints ,一些Booleans和ArrayList类的ArrayList 。 重要的是,似乎我不能把它写成一个字符串列表,我发现的所有教程只显示保存简单的ArrayLists,如字符串,它们都是Serializable,而不是Parcelable。 编辑:感谢您的建议,但我实现Parcelable包装活动之间列表中的特定对象..

Android – SQLite + SharedPreferences,2个线程同时读/写?

我有一个程序的两个部分(实际的应用程序和一个BroadcastReceiver)可能尝试连接和修改SQLite数据库和SharedPreferences文件。 1)我知道你可以与一个SQLite数据库建立多个连接。 我还读到SQLite可以在尝试修改或读取数据库(UPDATE,INSERT等)时“锁定”数据库,因此如何正确处理2个线程尝试修改/读取单个SQLite数据库的情况同一时间? 现在,我的数据库连接代码/类中有这个代码片段: private SQLiteDatabase myDatabase; public boolean insert(ContentValues columnValueMap) throws Exception { long result = 0; int attempt =0; do { if(!myDatabase.isDbLockedByOtherThreads() && !myDatabase.isDbLockedByCurrentThread()) { synchronized (myDatabase) { result=myDatabase.insertOrThrow(TABLE_NAME, TEXT, columnValueMap); if(result ==0 || result == -1) { return false; } return true; } } else { Thread.sleep(50); } attempt++; }while(attempt<=5); throw new […]

如何保存/加载BigInteger数组

我想在SharedPreferences中保存/加载BigInteger数组。 如何做呢? 例如,对于以下数组: private BigInteger[] dataCreatedTimes = new BigInteger[20];

Android – 在Fragment类中保存成员字段的值

每次显示Fragment时,我都试图在Fragment类中使用boolean做一些事情。 例 我的应用程序启动,打开FirstFragment并且第一次boolean始终为true ,然后我有一个if子句来检查它的值: if (FirstTime) { FirstTime = false; } else { // Other stuff here, cause it’s not true. } 然后,在第一次,当FirstTime为true ,我做的事情就像去另一个Fragment 。 当我返回Fragment1和onCreate() ,我也会这样做。 它总是true ,似乎它是令人耳目一新的东西。 然后我认为这可能是Fragment一个问题,每次我按下Fragment1 ,它都会重启或者什么的。 然后,我在MainActivity添加了一个getter和setter: public Boolean getFirstTime() { return FirstTime; } public void setFirstTime(Boolean FirstTime) { this.FirstTime = FirstTime; } 从开始以来,它是真的,然后,我从Fragment1更改了我的代码: if (((MainActivity) getActivity()).getFirstTime()) ((MainActivity) getActivity()).setFirstTime(false); } […]

如何将sharedpreferences文件从内部存储传输到外部存储?

如何将共享首选项复制到保留xml format外部存储,以便以后可以共享首选项。 试图读取sharedpreferences并将其保存为文件中的string ,创建了一个string JSON类型,但我需要一个xml 。 考虑遍历应用程序的内部存储和复制文件并将其放在外部存储中,但这可能过于复杂。 真的很想知道是否有一种简单而明智的方式来传递`sharedpreferences。