Android应用程序的用户设置活动

时间:2013-01-05 17:24:46

标签: android android-intent android-location android-networking

我想创建一个简单的应用程序来上传我的位置。我有两个活动,在第一个活动中,用户可以输入参数url以便使用editbox上传,如果用户希望上传位置保存首选项按钮,则可以输入复选框。得到位置活动。我试试这个但没有工作...我怎么称呼我的功能启动并保存?有什么帮助吗?我在调试时遇到错误...点击按钮后

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    SharedPreferences preferences = getSharedPreferences("gpstracker" , MODE_PRIVATE);

    String strValue = preferences.getString("Url",strValued);


      edittxtUrl = (EditText)findViewById(R.id.txtUrl);
      edittxtUrl.setText(strValue);


     Button buttonStart = (Button)findViewById(R.id.buttonStart);        
     buttonStart.setOnClickListener(startListener); 

     Button buttonSave = (Button)findViewById(R.id.buttonSave);        
     buttonSave.setOnClickListener(saveListener); 


}

private OnClickListener startListener = new OnClickListener() {
    public void onClick(View v) {

        Start();
    }
};


 private OnClickListener saveListener = new OnClickListener() {
    public void onClick(View v) {

        Save();
    }
};



public void Save() {

 SharedPreferences preferences = getSharedPreferences("gpstracker" , MODE_PRIVATE);
  SharedPreferences.Editor editor = preferences.edit(); 

   edittxtUrl = (EditText)findViewById(R.id.txtUrl);
  String strUrl = edittxtUrl.getText().toString();


  CheckBox chkTandC = (CheckBox)findViewById(R.id.chkTandC);
  boolean blnTandC = chkTandC.isChecked();

  editor.putString("Url", strUrl); // value to store

  editor.putBoolean("TandC", blnTandC); // value to store    
  // Commit to storage
  editor.commit();    

}
public void Start() {

 startActivity(new Intent(this, LocTracker.class));
 }   

1 个答案:

答案 0 :(得分:0)

没有你的日志猫有点难以分辨你的问题是什么,但我认为正在发生的是你将一个空视图传递给start方法,这是一个问题,因为你正试图得到一个上下文。你所写的有效是

null.getContext()

哪个不起作用。您可以将view.getContext()替换为getApplicationContext()

来解决此问题