Наконец-то я получил все в своем приложении, но теперь, когда я выхожу из него с помощью чего-либо, кроме кнопки "Домой", он начинает мигать экран закрытия силы, а затем он исчезает. Я знаю, что это не такая уж большая сделка, но я действительно хочу, чтобы это прекратилось, я, наконец, получил логарифм, и он сказал, что нет super.onStop(), поэтому я добавил, что тогда он снова закрыл меня, nullPointer,
Я закрываю приложение, используя moveTaskToBack (true), и в любое время, когда я его использую, это то, что он делает, дает мне nullpointer в моем методе onDraw. Я не уверен, какая другая информация необходима, поэтому дайте мне знать, заблаговременно за любую помощь.
public void onDraw(Canvas canvas){
if(checkState == -9){
canvas.drawColor(Color.BLACK);
canvas.drawBitmap(bG, 0, 0, paint);
canvas.drawBitmap(title, display.getWidth()/2 - title.getWidth()/2, 10, paint);
canvas.drawBitmap(start, display.getWidth()/2 - start.getWidth()/2, 40 + title.getHeight(), paint);
canvas.drawBitmap(instructions, display.getWidth()/2 - instructions.getWidth()/2, 80 + title.getHeight() + start.getHeight(), paint);
canvas.drawBitmap(exit, display.getWidth()/2 - exit.getWidth()/2, 120 + title.getHeight() + start.getHeight() + exit.getHeight(), paint);
canvas.drawBitmap(highScore, 0, display.getHeight() - highScore.getHeight(), paint);
String high = highLevel + "";
for(int i = 0; i < high.length(); i++){
levelOnMenu = high.charAt(i) + "";
levelPiece = Integer.parseInt(levelOnMenu);
int placeX = highScore.getWidth() + levelNumber.getWidth()/2 ;
if(high.length() == 1){
}
else if(high.length() == 2){
if(i == 0){
}
else{
placeX = placeX + levelNumber.getWidth();
}
}
это говорит мне, что первая часть onDraw имеет значение null, drawColor... что не имеет для меня большого смысла
Здесь я использую moveTaskToBack()
if(checkState == -11){
if(event.getAction() == MotionEvent.ACTION_UP){
if(x >= display.getWidth()/2 - pauseMenu.getWidth()/2 && x <= display.getWidth()/2 + pauseMenu.getWidth()/2 && y >= display.getHeight()/2 - pauseMenu.getHeight()/2 && y <= display.getHeight()/2 - pauseMenu.getHeight()/2 + pauseMenu.getHeight()/3){
checkState = previousState;
}
if(x >= display.getWidth()/2 - pauseMenu.getWidth()/2 && x <= display.getWidth()/2 + pauseMenu.getWidth()/2 && y >= display.getHeight()/2 - pauseMenu.getHeight()/2 + pauseMenu.getHeight()/3 && y <= display.getHeight()/2 - pauseMenu.getHeight()/2 + 2*(pauseMenu.getHeight()/3)){
if(sound){
sound = false;
}
else{
sound = true;
}
}
if(x >= display.getWidth()/2 - pauseMenu.getWidth()/2 && x <= display.getWidth()/2 + pauseMenu.getWidth()/2 && y >= display.getHeight()/2 - pauseMenu.getHeight()/2 + 2*(pauseMenu.getHeight()/3) && y <= display.getHeight()/2 - pauseMenu.getHeight()/2 + pauseMenu.getHeight()){
moveTaskToBack(true);
}
}
}
Не следует ли использовать функцию Activity.finish() для закрытия вашего приложения?