如何使用Intent在Android中通过多个活动传递价值?

时间:2018-02-25 21:01:29

标签: android android-intent

我现在正在处理的项目目前有3个屏幕。 注册页面,登录页面和主页。 注册后,您将返回登录页面,然后从登录页面返回主页。 我可以使用Intent将用户名从登录页面传递到主页,但我不知道如何将String值(用户类型)从注册页面传递到主页。 看起来这个意图只有在按下按钮时才有效,这就是为什么当我按下将我带到主页的按钮时,我可以将值从登录页面传递到主页。

1 个答案:

答案 0 :(得分:0)

从头脑中,我想起了两种方式:

  • 开启按钮单击,开始新活动时:

public void nextFormPage(View v){

Intent form_conclusion = new Intent(this, YOURCLASS.class); //define which class to go next

form_conclusion.putExtra("TAG", value);//passes the values to the next activity

startActivity(form_conclusion);                           //start the new activity

finish();

}
  • 使用sharedpreferences存储值,并在需要时读取它

Documentation

  
      
  • SharedPreferences sharedPref = getActivity().getPreferences(Context.MODE_PRIVATE);
    SharedPreferences.Editor editor = sharedPref.edit();
    editor.putInt(getString(R.string.saved_high_score_key), newHighScore);
    editor.commit();
    
  •   
  • SharedPreferences sharedPref = getActivity().getPreferences(Context.MODE_PRIVATE);
    int defaultValue = getResources().getInteger(R.integer.saved_high_score_default_key);
    int highScore = sharedPref.getInt(getString(R.string.saved_high_score_key), defaultValue);
    
  •