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

我是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 PRASAD"+i); sName=name.getText().toString(); Log.v("sName 1111111","-->"+sName); getSharedPreferences("Values", 0).edit().putString("NAMES",sName).commit(); 

在这里,我想在Main2.class.the main2.java中获得相同的数据,如下所示

 public class Main2 extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main2); String name=getSharedPreferences("Values", 0).getString("NAMES", ""); ((TextView)findViewById(R.id.textView1)).setText(name); } 

但在这里我只得到一个名字,就像HAI PRASAD9

我怎么能一个接一个

HAI PRASAD0 HAI PRASAD1 HAI PRASAD2 HAI PRASAD3 HAI PRASAD4 ……等等?

请任何人都可以帮忙

提前致谢

您需要有多个键来存储多个项目。 像这样的东西:

 for (int i = 0; i < 10; i++) { getSharedPreferences("Values" + i, 0).edit().putString("Key" + i, "STring" + i); } for (int i = 0; i < 10; i++) { getSharedPreferences("Values" + i, 0).getString("Key" + i, ""); } 

希望这可以帮助。