我是使用Java进行android开发的新手,我开始讨论如何在SharedPreferences类中保存应用程序数据。
尝试进行此尝试时,应用程序崩溃..
这个android java代码导致应用程序在尝试保存数据时崩溃
package com.example.savedata;
import android.app.Activity;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.view.Menu;
import android.view.View;
import android.widget.TextView;
public class MainActivity extends Activity {
SharedPreferences sp;
@Override
protected void onCreate(Bundle savedInstanceState) {
TextView tv;
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
sp = getSharedPreferences ("MYFILENAME",MODE_PRIVATE);
tv = (TextView)findViewById(R.id.txtData);
tv.setText(sp.getString("Data","0"));
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
public void saveDate(View v){
sp = getSharedPreferences("MYFILENAME", MODE_PRIVATE);
TextView tv;
SharedPreferences.Editor ed = sp.edit();
tv = (TextView)findViewById(R.id.txtData);
ed.putString("Data", (String) tv.getText());
ed.commit();
}
}
任何人都可以帮我说明为什么这段代码会崩溃?
答案 0 :(得分:0)
你可以试试这个,
而不是:
ed.putString("Data", (String) tv.getText());
你可以使用:
ed.putString("Data", tv.getText().toString());