Как сделать глобальный массив с использованием Java, получая ошибку "не удается разрешить символ" - PullRequest
0 голосов
/ 25 мая 2018

Я все еще новичок, пытаюсь создать простое приложение, которое вызывает номера бинго, используя java в Android Studio.У меня проблемы с удалением номеров, как только они были вызваны.Я пытаюсь сделать список массивов общедоступным и доступным для моего метода кнопки, но получаю сообщение «не удается разрешить символ« шар »».Я попытался поместить список массивов под onCreate(), но затем мне сказали, что мне нужно объявить мяч финальным.Если я это сделаю, я не могу удалить из списка массивов позже.Я пробовал много разных вещей, но, похоже, не понимаю, все предложения приветствуются!

класс MainActivity расширяет AppCompatActivity {

public static void main (String[] args)
{
    ArrayList<String> ball = new ArrayList<String>();
    ball.add("B1");
    ball.add("B2");
    ball.add("B3");
    ball.add("B4");
}

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    Button button = (Button) findViewById(R.id.button);

    button.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            Random r = new Random();
            String call = ball.get(r.nextInt(ball.size()));
            TextView text = (TextView) findViewById(R.id.result);
            text.setText(call);
            ball.remove(r);
        }
    });
}
}

1 Ответ

0 голосов
/ 15 июня 2018

В целом, в Android Studio нет необходимости в так называемой «основной» функции, которая широко используется в других программах Java, так как по умолчанию она не используется.Однако метод onCreate() можно отнести к аналогичному использованию main в целом.Приведенный ниже код решает вашу проблему:

public class MainActivity extends AppCompatActivity{

private ArrayList<String> ball;

@Override
protected void onCreate(Bundle savedInstanceState){
    super.onCreate(savedInstanceState);


    ball = new ArrayList<String>();

    ball.add("B1");
    ball.add("B2");
    ball.add("B3");
    ball.add("B4");


    setContentView(R.layout.activity_main);

    Button button = (Button) findViewById(R.id.button);

    button.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            Random r = new Random();
            String call = ball.get(r.nextInt(ball.size()));
            TextView text = (TextView) findViewById(R.id.result);
            text.setText(call);
            ball.remove(r);
        }
    });
}

}

Я настоятельно рекомендую вам снова пройтись по основам android, в идеале начиная с Разработчики Android: Понимание жизненного цикла активности.

Надеюсь, я помог,

...