barnamenevisjavan
دوشنبه 16 شهریور 1394, 10:27 صبح
سلام کدهای زیر آرایه رو داخل RecycleView اضافه میکنه و بصورت رندوم توی لیست نشون میده حالا من میخوام بصورت رندوم نباشه وهرچی که توی ارایه هست رو لود بکنم چه تغییری باید انجام بشه؟
public static final String[] sCheeseStrings = {
"مسلمانان و تاريخنگاري","ميراث تاريخي اعراب در جاهليت","تأثير مباحث تاريخي قرآن","لزوم بهرهگيري از سنت رسول خدا","توجه حاکمان به تاريخ","تأثير نوشتههاي تاريخي ساير اقوام بر اعراب"};
private void setupRecyclerView(RecyclerView recyclerView) {
recyclerView.setLayoutManager(new LinearLayoutManager(recyclerView.getContext()));
recyclerView.setAdapter(new SimpleStringRecyclerViewAdapter(getActivity(),
getRandomSublist(Cheeses.sCheeseStrings, 200)));
}
private List<String> getRandomSublist(String[] array, int amount) {
ArrayList<String> list = new ArrayList<>(amount);
Random random = new Random();
while (list.size() < amount) {
list.add(array[random.nextInt(array.length)]);
}
return list;
}
وقتی کد random.nextInt رو حذف میکنم برنامه که لانچ میشه کرش میکنه و بسته میشه
---
خودم حلش کردم از حلقه فور استفاده کردم
for (int i = 0; i < array.length; i++) {
list.add(array[i]);
}
public static final String[] sCheeseStrings = {
"مسلمانان و تاريخنگاري","ميراث تاريخي اعراب در جاهليت","تأثير مباحث تاريخي قرآن","لزوم بهرهگيري از سنت رسول خدا","توجه حاکمان به تاريخ","تأثير نوشتههاي تاريخي ساير اقوام بر اعراب"};
private void setupRecyclerView(RecyclerView recyclerView) {
recyclerView.setLayoutManager(new LinearLayoutManager(recyclerView.getContext()));
recyclerView.setAdapter(new SimpleStringRecyclerViewAdapter(getActivity(),
getRandomSublist(Cheeses.sCheeseStrings, 200)));
}
private List<String> getRandomSublist(String[] array, int amount) {
ArrayList<String> list = new ArrayList<>(amount);
Random random = new Random();
while (list.size() < amount) {
list.add(array[random.nextInt(array.length)]);
}
return list;
}
وقتی کد random.nextInt رو حذف میکنم برنامه که لانچ میشه کرش میکنه و بسته میشه
---
خودم حلش کردم از حلقه فور استفاده کردم
for (int i = 0; i < array.length; i++) {
list.add(array[i]);
}