Мне нужна помощь для правильной настройки предпочтений.
У меня есть основное занятие, из которого, нажав кнопку меню, я перехожу к действию предпочтений. Там у меня есть 3 записи, где пользовательвводит свои данные. Первая запись представляет собой серийный номер.
Я хочу иметь возможность показать список со всеми серийными номерами, и когда пользователь выбирает один, показать ему другие записи (или выполнить некоторые вычисления).
---------- ОБНОВЛЕНО ------------------------------------
Моя основная деятельность:
public class Strength extends Activity implements OnClickListener{
View goto_list;
SharedPreferences mypref;
String [] values=new String [100];
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
//Set up click listeners
goto_list=(View) findViewById(R.id.goto_list);
goto_list.setOnClickListener(this);
//Setup preferences
mypref= PreferenceManager.getDefaultSharedPreferences(this);
SharedPreferences.Editor prefsEditr=mypref.edit();
final Integer counter =values.length;
prefsEditr.putInt("size", counter);
for (int i=0;i<counter;i++) {
prefsEditr.putString("serial_number"+i, values[i]);
}
prefsEditr.putString("date", "");
prefsEditr.putString("strength", "1.0");
prefsEditr.commit();
}
Моя активность goto_list, которая покажет список с серийными номерами:
public class goto_list extends ListActivity {
private final String TAG="list";
SharedPreferences mypref;
String[] listItems = null;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.list);
mypref= PreferenceManager.getDefaultSharedPreferences(this);
final Integer counter = mypref.getInt("size",0);
listItems=new String[counter];
for (int i=0;i<counter;i++) {
listItems[i] = mypref.getString("serial_number"+i, "");
}
//what to do with ArrayAdapter?
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
android.R.layout.simple_list_item_1,listItems);
setListAdapter(adapter);
}
protected void onListItemClick(ListView l, View v, int position, long id) {
Log.i(TAG, "position: " + position);
Log.i(TAG, "item: " + listItems[position]);
mypref.edit().putString("serial_number", listItems[position]).commit();
String item = (String) getListAdapter().getItem(position);
Intent i=new Intent(this,calcs_strength.class);
startActivity(i);
finish();
}
Итак, моя проблемаявляется то, что список пуст. Это не данные.
Спасибо!