Zuerst wähle ich einige Array-Artikel mit Checkbox und zeigt es in der zweiten Aktivität. Danach öffne ich wieder meine erste Aktivität von ArrayList
, aber meine Checkbox Auswahl wird gelöscht.Wie vorgewähltes Kontrollkästchen anzeigen, wenn wieder Arraylist in Android öffnen
Unten ist mein Code
public class Occassion extends AppCompatActivity implements View.OnClickListener,AdapterView.OnItemClickListener {
ListView listView_occassion;
ArrayAdapter<String> adapterOccassion;
Button mButtonOccassionNext;
int position;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_occassion);
listView_occassion = (ListView) findViewById(R.id.occassion_listview);
mButtonOccassionNext = (Button) findViewById(R.id.btn_occassion_next);
listView_occassion.setOnItemClickListener(this);
String[] Occassion = getResources().getStringArray(R.array.occassion_array);
adapterOccassion = new ArrayAdapter<String>(this,
android.R.layout.simple_list_item_multiple_choice, Occassion);
listView_occassion.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE);
listView_occassion.setAdapter(adapterOccassion);
mButtonOccassionNext.setOnClickListener(this);
}
@Override
public void onClick(View view) {
Intent intent = new Intent(getApplicationContext(),Filters.class);
startActivity(intent);
}
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
SparseBooleanArray checked = listView_occassion.getCheckedItemPositions();
ArrayList<String> selectedItemsOccassion = new ArrayList<String>();
Utils.occassionArrayList.clear();
for (i = 0; i < checked.size(); i++) {
// Item position in adapter
int position = checked.keyAt(i);
// Add sport if it is checked i.e.) == TRUE!
if (checked.valueAt(i))
// selectedItemsFlavour.add(adapterFlavour.getItem(position));
Utils.occassionArrayList.add(adapterOccassion.getItem(position));
}
}
}
Anzeige zweite Aktivität als Ergebnis ..
mtv_occassion_status = (TextView) findViewById(R.id.tv_occassion_status);
if(!Utils.occassionArrayList.isEmpty()){
String tempOccassion= String.valueOf(Utils.occassionArrayList);
mtv_occassion_status.setText(tempOccassion);
}
Und Liste meiner Array in String.xml hinzufügen
<string-array name="occassion_array">
<item>Birthday</item>
<item>Wedding</item>
<item>Anniversary</item>
<item>Celebration</item>
<item>Get Well Soon</item>
<item>House warming</item>
<item>Valentines Day</item>
<item>Diwali</item>
<item>Friendship Day</item>
<item>X-Mas</item>
<item>New Year</item>
<item>Random</item>
</string-array>
Jede Hilfe wäre großartig r ich.
Sir .. mache deine antwort aber wenn ich wieder zu meiner arraylist gehe ist schwarz kein checkbox ausgewählt. Bedeutet, wenn ich Geburtstag und Hochzeit ankreuzen meine Textansicht gebe das richtige Ergebnis und wieder gehe meine Listarray wird es leer sein nicht ausgewählt Geburtstag und wdding –
Hey ich habe meine Antwort bearbeitet, bitte gehen Sie durch diese. –