Note that there are some explanatory texts on larger screens.

plurals
  1. POunable to retrieve data from sharedpreferences using loop and arrayadapter
    primarykey
    data
    text
    <p>I am trying to use SharedPreferences to store data from an ArrayList. But I am lost. I am using a for loop to retrieve the data and store it in the listview. Also when I press the button the preferences are stored.</p> <pre><code>package com.example.todolist; import java.util.ArrayList; import android.app.Activity; import android.content.SharedPreferences; import android.content.SharedPreferences.Editor; import android.os.Bundle; import android.view.KeyEvent; import android.view.Menu; import android.view.View; import android.view.View.OnClickListener; import android.view.View.OnKeyListener; import android.view.Window; import android.widget.ArrayAdapter; import android.widget.Button; import android.widget.EditText; import android.widget.ListView; import android.widget.Toast; public class MainActivity extends Activity { ArrayList&lt;String&gt; items; ArrayAdapter&lt;String&gt; adapter; ListView l; EditText et; Button bt, bt2; Object ob; int i = 0, k = 0; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); this.requestWindowFeature(Window.FEATURE_NO_TITLE); setContentView(R.layout.activity_main); et = (EditText) findViewById(R.id.editText1); bt = (Button) findViewById(R.id.button1); bt2 = (Button) findViewById(R.id.button2); l = (ListView) findViewById(R.id.listView1); items = new ArrayList&lt;String&gt;(); adapter = new ArrayAdapter&lt;String&gt;(this, android.R.layout.simple_list_item_1, items); l.setAdapter(adapter); bt.setOnClickListener(new OnClickListener() { @Override public void onClick(View arg0) { // TODO Auto-generated method stub action(); SharedPreferences prfs = getSharedPreferences("PREFS", i); Editor edit = prfs.edit(); edit.putString("" + i, et.getText().toString()); edit.putInt("counter", i); edit.commit(); et.setText(""); k = prfs.getInt("counter", 0); i = i + 1; } }); for (i = 0; i &lt; k + 1; i++) { SharedPreferences prfs = getSharedPreferences("PREFS", i); items.add(0, (String) prfs.getString("" + i, "Null")); adapter.notifyDataSetChanged(); } } private void action() { // TODO Auto-generated method stub if (!("".equals(et.getText().toString()))) { ob = et.getText().toString(); items.add(0, (String) ob); adapter.notifyDataSetChanged(); } else { Toast.makeText(getBaseContext(), "Field should not be empty!", Toast.LENGTH_LONG).show(); } } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.main, menu); return true; } } </code></pre>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload