Добрый вечер!
Подскажите пожалуйста, как обратиться из метода Onclick(...)
к ArrayList
, который был создан в методе OnCreate(...)
?
Пока сделал так:
OnCreate(...):
ArrayList<Integer> Arrayl = new ArrayList<>();
for (int a = 1; a < 8; a++) {
Arrayl.add(a);
}
Collections.shuffle(Arrayl);// перемешиваем
в Onclick(...):
int actvopros= Arrayl.get(0); //и такое обращение не работает
Скорее всего Ваша проблема заключается в том, что коллекцию Arrayl
Вы объявляете как локальную переменную метода OnCreate(...)
, которая вне этого метода видна не будет.
Для того, чтобы получить доступ к этой переменной из других методов (этого же класса), коллекцию Arrayl
нужно объявить как поле класса:
public class MainActivity extends AppCompatActivity {
private ArrayList<Integer> Arrayl;
@Override
protected void onCreate(Bundle savedInstanceState) {
Arrayl = new ArrayList<>();
for (int a = 1; a < 8; a++) {
Arrayl.add(a);
}
Collections.shuffle(Arrayl);
}
}
Объявляй вне методов, инициализируй в OnCreate и используй где хочешь.
class A {
private ArrayList Arrayl;
...
OnCreate {
...
Array1 = new ArrayList<>()
....
}
void B { Array1 будет видно. }
}
Вот так.
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Что делаю: Я получаю все JSONObjects с моего сервера через websockets в MainActivity и кладу их в ArrayList<JSONObject>:
Хочу освоить firebaseПриложение вылетает сразу же после запуска на телефоне