Ich habe dieses Projekt, wo es eine Personenversicherung Informationen unter Verwendung von zwei FloatingActionButtons
zeigt, die TextViews
und EditTexts
steuern. Ich versuche, diese Informationen im internen/externen Speicher eines mobilen Geräts zu speichern. Ich habe den Code ist nur, dass, wenn die Informationen angezeigt werden alle Strings
als eine große String
angeschlossen werden. Hier ist ein Druckbildschirm von dem, was ich meine.Problem mit der Anzeige mehrerer Zeichenfolgen aus dem internen Speicher
Hier ist der Code, den ich für die FloatingActionButtons
in der Java-Datei InsuranceActivity.java
genannt verwendet:
//Saves information on the editText fields
FloatingActionButton saveInfo = (FloatingActionButton) findViewById(R.id.saveInfo);
saveInfo.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String InsurerNameStr = InsurerNameEdit.getText().toString();
String MembershipStr = MembershipNoEdit.getText().toString();
String NameStr = NameEdit.getText().toString();
String DOBStr = DOBEdit.getText().toString();
String PostcodeStr = PostcodeEdit.getText().toString();
String file_name = "InsuranceInfo";
try {
FileOutputStream fileOutputStream = openFileOutput(file_name,MODE_PRIVATE);
fileOutputStream.write(InsurerNameStr.getBytes());
fileOutputStream.write(MembershipStr.getBytes());
fileOutputStream.write(NameStr.getBytes());
fileOutputStream.write(DOBStr.getBytes());
fileOutputStream.write(PostcodeStr.getBytes());
fileOutputStream.close();
Toast.makeText(getApplicationContext(), "Information Saved.", Toast.LENGTH_LONG).show();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
});
//Hides EditText and displays TextViews with the information that was saved
FloatingActionButton showInfo = (FloatingActionButton) findViewById(R.id.showInfo);
showInfo.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
InsurerNameEdit.setVisibility(View.GONE);
MembershipNoEdit.setVisibility(View.GONE);
NameEdit.setVisibility(View.GONE);
DOBEdit.setVisibility(View.GONE);
PostcodeEdit.setVisibility(View.GONE);
InsurerName.setVisibility(View.VISIBLE);
MembershipNo.setVisibility(View.VISIBLE);
Name.setVisibility(View.VISIBLE);
DOB.setVisibility(View.VISIBLE);
Postcode.setVisibility(View.VISIBLE);
try {
String InsurerNameStr;
String MembershipStr;
String NameStr;
String DOBStr;
String PostcodeStr;
FileInputStream fileInputStream = openFileInput("InsuranceInfo");
InputStreamReader inputStreamReader = new InputStreamReader(fileInputStream);
BufferedReader bufferedReader = new BufferedReader(inputStreamReader);
StringBuffer stringBuffer = new StringBuffer();
while ((InsurerNameStr = bufferedReader.readLine()) != null) {
stringBuffer.append(InsurerNameStr);
}
while ((MembershipStr = bufferedReader.readLine()) != null) {
stringBuffer.append(MembershipStr);
}
while ((NameStr = bufferedReader.readLine()) != null) {
stringBuffer.append(NameStr);
}
while ((DOBStr = bufferedReader.readLine()) != null) {
stringBuffer.append(DOBStr);
}
while ((PostcodeStr = bufferedReader.readLine()) != null) {
stringBuffer.append(PostcodeStr);
}
InsurerName.setText(stringBuffer.toString());
MembershipNo.setText(stringBuffer.toString());
Name.setText(stringBuffer.toString());
DOB.setText(stringBuffer.toString());
Postcode.setText(stringBuffer.toString());
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
});
Vielen Dank für Ihre Hilfe im Voraus.
Ihnen für Ihre Hilfe danken Ich weiß nicht, ob ich.! Ich frage nach zu viel hier, aber gibt es irgendein Beispiel, das ich haben könnte, um etwas anderes in jedem TextView anzuzeigen, oder könnten Sie mir in die richtige Richtung zeigen? Ich bin ziemlich neu in diesem. –
Ich weiß es nicht wirklich Wie viel mehr könnte ich sagen, wenn Sie in jeder 'TextView' etwas anderes anzeigen wollen, müssen Sie jedem über 'setText()' eine andere Zeichenkette übergeben. In Ihrem Fall möchten Sie eine Linie, setze diese Zeile als Text der entsprechenden 'TextView', und wiederhole das. Ich kann versuchen, in einem Beispiel zu editieren. –