Note that there are some explanatory texts on larger screens.

plurals
  1. POCheckedTextView set to checked oncreate in listview?
    primarykey
    data
    text
    <p>I am trying to make a shoppinglist, where the CheckedTextView is checked if you have already picked your item previously ie the item has a boolean set to true if picked. </p> <p>I have overriden the getview method to change the CheckedTextView text with setText() and that works but setting the setChecked(true) method in CheckedTextView doesnt not make it checked.</p> <p>I know that I am not recycling any views in getview(), that will be a later project in the project, right know I need to see a green checkmark =)</p> <p>Any thoughts? please help.</p> <p>my xml files:</p> <p>test.xml </p> <pre><code> &lt;CheckedTextView xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/text1" android:layout_width="fill_parent" android:layout_height="?android:attr/listPreferredItemHeight" android:textAppearance="?android:attr/textAppearanceLarge" android:gravity="center_vertical" android:checkMark="?android:attr/textCheckMark" android:paddingLeft="5dip" android:paddingRight="50dip" android:textColor="#000000" android:background="#ffffff" android:tag="text1" android:text="testtestetstt" android:focusable="false"/&gt; </code></pre> <p>listfippel.java</p> <pre><code>package nu.listfippel.mitt; import java.util.ArrayList; import java.util.Arrays; import java.util.List; import android.app.ListActivity; import android.content.Context; import android.graphics.Color; import android.graphics.Typeface; import android.os.Bundle; import android.text.Spannable; import android.text.style.StrikethroughSpan; import android.text.style.StyleSpan; import android.view.Gravity; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.AdapterView; import android.widget.ArrayAdapter; import android.widget.BaseAdapter; import android.widget.CheckBox; import android.widget.CheckedTextView; import android.widget.ListAdapter; import android.widget.TextView; import android.widget.Toast; import android.widget.AdapterView.OnItemClickListener; public class listfippel extends ListActivity { //ArrayList&lt;Ingred&gt; ing; Ingred i1 = new Ingred("banan", 2, 1, true); Ingred i2 = new Ingred("äpple", 3, 1, false); Ingred i3 = new Ingred("päron", 3, 1, true); Ingred i4 = new Ingred("gröt", 3, 1, false); Ingred i5 = new Ingred("bröd", 3, 1, false); Ingred i6 = new Ingred("kyckling", 3, 1, false); Ingred i7 = new Ingred("röd paprika", 3, 1, false); Ingred i8 = new Ingred("tårta", 3, 1, false); Ingred i9 = new Ingred("bappelsin", 3, 1, false); Ingred i10 = new Ingred("gurka", 3, 1, true); CheckedTextView ctv; Ingred[] ingarray = { i1, i2, i3, i4, i5, i6, i7, i8, i9, i10 }; Ingadapter adapter; Ingred temp; /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.list); ArrayList&lt;Ingred&gt; ing = new ArrayList&lt;Ingred&gt;(Arrays.asList(ingarray)); adapter = new Ingadapter(this, R.layout.test, ing); //adapter = new IngArrayAdapter(ing); OnItemClickListener il = new OnItemClickListener() { @Override public void onItemClick(AdapterView&lt;?&gt; parent, View arg1, int index, long arg3) { temp = (Ingred)parent.getItemAtPosition(index); if (temp.getCheck()){ Toast toast = Toast.makeText(getApplicationContext(), "Du avmarkerade nyss den\nklarmarkerade varan " + parent.getItemAtPosition(index).toString(), Toast.LENGTH_LONG); toast.setGravity(Gravity.CENTER, 0, 0); toast.show(); } if (!temp.getCheck()){ temp.setCheck(true); //ctv.setChecked(true); } else { temp.setCheck(false); } adapter.notifyDataSetChanged(); } }; setListAdapter(adapter); //setTitleColor(Color.RED); getListView().setOnItemClickListener(il); getListView().setChoiceMode(2); } class Ingadapter extends ArrayAdapter&lt;Ingred&gt;{ public Ingadapter(Context context, int textViewResourceId, List&lt;Ingred&gt; objects) { super(context, textViewResourceId, objects); // TODO Auto-generated constructor stub } @Override public View getView(int position, View convertView, ViewGroup parent) { // TODO Auto-generated method stub LayoutInflater inflater=getLayoutInflater(); View row = inflater.inflate(R.layout.test, null); row.setTag(R.id.text1, row.findViewById(R.id.text1)); CheckedTextView ctv =(CheckedTextView)row.getTag(R.id.text1); Ingred temp = (Ingred)((AdapterView&lt;?&gt;) parent).getItemAtPosition(position); if(temp.getCheck()){ ctv.setChecked(true); } ctv.setText(temp.toString()); return (row); } } } </code></pre> <p>Ingred.java</p> <pre><code>package nu.listfippel.mitt; public class Ingred { private String namn; @SuppressWarnings("unused") private int volym; private double antal; private boolean check = false; private String retstring; public Ingred(String namn, double antal, int volym, boolean check){ this.namn = namn; this.antal = antal; this.volym = volym; this.check = check; } public String toString(){ if (!this.check){ retstring = namn + " \n(" + antal + " behövs)"; } else { retstring = namn; } return retstring; } public boolean getCheck(){ return this.check; } public void setCheck(boolean check){ this.check = check; } } </code></pre>
    singulars
    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.
 

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