Как я могу использовать внешнее хранилище, чтобы сохранить свои значения в форме, создать новую запись в таблице лидеров и получить данные обратно? - PullRequest
0 голосов
/ 31 декабря 2018

Я довольно новичок в Java, так как работаю с ним меньше года и не знаю, как это сделать.

У меня есть код, который начинает сохранять значения, но он мне нужен, чтобы создать новую запись в списке.

 public void setupSaveButton() {
    Button save = findViewById(R.id.save);
    save.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            calculateTotal();
            getTeamNumber();
            getMatchNumber();
            //output the total to leaderboard where it saves and ranks them

            //save the data to a list in the leaderboard
        }
    });
}

Например, в приложении для мобильных заметок на iOS или Android при сохранении заметки в меню создается новый визуальный элемент.У него есть ваш заголовок и другие вещи, но я не знаю, как создавать XML-виджеты и назначать им идентификаторы и куда они должны идти.Я прошу прощения за то, что рассуждаю об этом, поскольку я уверен, что есть простое решение, но я не знаю, что это такое.Код, в котором я сохраняю его, не изображен выше, поскольку он был бы слишком большим.

1 Ответ

0 голосов
/ 31 декабря 2018

Посмотрите это официальное руководство по Android ;это довольно полезно.В нем показано, как настроить проект для записи и чтения файлов на внешнее хранилище и из него, а также как настроить файлы.

Затем, , вот еще одно руководство .Показано, что как только вы получили свой файл, вы можете записать его в хранилище следующим образом:

try {
    FileOutputStream fos = new FileOutputStream(myExternalFile);
    fos.write(yourValuesAsString.getBytes()); // Convert any values you want to store into strings before writing to files
    fos.close();
} catch (IOException e) {
    e.printStackTrace();
}

и прочитать его из хранилища следующим образом:

try {
    FileInputStream fis = new FileInputStream(myExternalFile);
    DataInputStream in = new DataInputStream(fis);
    BufferedReader br = new BufferedReader(new InputStreamReader(in));
    String strLine;
    while ((strLine = br.readLine()) != null) {
        myData = myData + strLine;
    }
    in.close();
} catch (IOException e) {
    e.printStackTrace();
}
...