Я пытаюсь сделать мой андроид телефон вибрировал после того, как мяч попадает в цель в игре, так что я создал внутренний класс Vibrate
, которые проходят активность как мой внешнего класса не является активностьвибро андроид телефон от класса неактивности
public class TheGame extends GameThread {
public class Vibrate extends Activity {
Vibrator v = (Vibrator) getSystemService(Context.VIBRATOR_SERVICE);
}
//some methods
protected void updateGame(float secondsElapsed){
//updating coordinates and if ball hits the target >> vibrate
TheGame.Vibrate vib = new TheGame.Vibrate();
vib.v.vibrate(500);
}
}
Как я могу назвать вибрацию (-inner class) от внешнего класса? В настоящий момент программа останавливается на шоу «к сожалению, приложение остановилось» и «слишком много выходных данных для обработки андроида» в Logcat //////////
Наконец-то с помощью dhke. Мне просто нужно было получить доступ к getSystemService (...) из контекста, который I Extended во внешнем классе.
Почему не 'GameThread' имеет доступ к' объекта context' где-нибудь? А точнее: кто создает объект GameThread? – dhke
Я не знаю, кто создает объект, но нужен ли нам объект GameThread? – user3791431
Вам понадобится доступ к объекту 'Context', который должен быть предоставлен вам инфраструктурой. Ошибка вашей программы должна действительно сказать вам, что вы * не можете * создавать действия с использованием 'new', они должны быть созданы каркасом и иметь довольно сложный жизненный цикл. Но вам не нужна активность для доступа к вибратору, вам нужен «Контекст». Итак, снова: кто создает «GameThread» и может ли создатель снабжать поток «Context» (или уже полученный вибратор) в поток? – dhke