2016-07-17 7 views
0

Unter Seite ist diejenige mit Daten, die ich vom Benutzer speichern möchte. Wie mache ich diese Daten bei der nächsten Aktivität mit einer editText der Textansicht gelesen werden?Wie benutze ich Interner Speicher für verschiedene Aktivitäten

Und ist dieser Code korrekt?

AddMoney.class

public class AddMoney extends AppCompatActivity { 
Button b1; 
EditText et; 
enter code here 
@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_add_money); 
    b1 = (Button) findViewById(R.id.b1); 
    et = (EditText) findViewById(R.id.et); 

    b1.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View view) { 
      saveData(); 
      AlertDialog.Builder b = new AlertDialog.Builder(AddMoney.this); 
      b.setIcon(R.mipmap.ic_launcher); 
      int val = Integer.parseInt(et.getText().toString()); 
      b.setTitle("MONEY ADDED"); 
      String msg = "₹" + val + " has been added in your wallet"; 
      b.setMessage(msg); 
      b.setCancelable(false); 
      b.setPositiveButton("OK",null);     
      AlertDialog d = b.create(); 
      d.show(); 
     } 
    }); 

} 

public void saveData() { 
    try { 
     FileOutputStream fileOutputStream = openFileOutput("Expenses.txt", MODE_PRIVATE); 
     fileOutputStream.write(et.getText().toString().getBytes()); 
     fileOutputStream.close(); 
    } catch (FileNotFoundException e) { 
     e.printStackTrace(); 
    } catch (IOException e) { 
     e.printStackTrace(); 
    } 
} 
} 
+0

warum wollen Sie es extern speichern? Verwenden Sie 'SharedPreferences' – SripadRaj

Antwort

0

Als bessere Lösung Sie nutzen SharedPreference als SripadRaj vorgeschlagen machen.

auf der ersten Aktivität, in dem Sie die Daten speichern:

SharedPreference sp =getSharedPreferences("app_package_name", Context.MODE_PRIVATE); 
sp.putString("expense",et.getText().toString()); 
sp.apply(); 

Auf einer anderen Aktivität:

SharedPreference sp =getSharedPreferences("app_package_name", Context.MODE_PRIVATE); 
String expense = sp.getString("expense","0.0"); 
Verwandte Themen