0
Ich versuche, eine GridView
durch Klicken auf eine Schaltfläche neu zu generieren und füllen neue Array von Zahlen zu meinem GridView
. Hier ist mein Code ohne lesen new Array:Hinzufügen neuer Array von Zahlen zu Gridview nach der Verwendung von OnclickItemListener
gridView = (GridView) findViewById(R.id.gridView);
final ArrayAdapter<Integer> adapter = new ArrayAdapter<Integer>(this,
android.R.layout.simple_list_item_1,randomArray(arrayNumbers));
gridView.setAdapter(adapter);
gridView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View v, int position, long id) {
gridView=(GridView)findViewById(R.id.gridView);
Integer values=Integer.parseInt(gridView.getItemAtPosition(position).toString());
y.setText(String.valueOf(value));
if (a==values) {
Collections.shuffle(randomArray(arrayNumbers));//xao tron vi tri cua cac so trong gridview
adapter.notifyDataSetChanged();//reload lai gridview
a = a + r.nextInt(11);//tang gia tri a
x.setText(String.valueOf(a));
System.out.println(a);
//Todo set gia tri a vao mang random(1) vua tao moi
Toast.makeText(getApplicationContext(), "OK", Toast.LENGTH_SHORT).show();
} else {
Toast.makeText(getApplicationContext(), "Failed", Toast.LENGTH_SHORT).show();
}
}
})
und hier ist meine Random Methode:
public static ArrayList randomArray(int[] a){
Random r= new Random();
List<Integer> list=new ArrayList<>();
for (int j=1;j<25;){
int random=((int)(Math.random()*100))+1;
if (!list.contains(random)){
list.add (random);
j++;
}
}
list.add(30);
return (ArrayList) list;
}
Entschuldigung, aber meine Sammlung wird nicht für die Void-Methode angewendet, was sollte ich tun? –
Ich habe die Antwort bearbeitet, überprüfe sie jetzt –
danke, es hat funktioniert. Noch eine Frage bitte. –