我正在制作这款基于文本的小型 rpg 游戏,用户可以在其中选择自己的姓名、种族、班级等……
我有一项活动,用户键入他们想要使用的名称,然后从微调器中选择比赛、班级。
然后当他们点击 Create character 按钮时,这一切都转移到下一个活动。这完美无缺。
问题在于保存数据时的 onPause 事件。onResume() 方法不起作用?视图只是显示为空白。
继承人选择的代码:
(这是从其他活动中提取数据的地方)
String Name = getIntent().getStringExtra("strName");
textViewStrName.setText(Name);
String Race = getIntent().getStringExtra("strRace");
textViewStrRace.setText(Race);
String Class = getIntent().getStringExtra("strClass");
textViewStrClass.setText(Class);
(这是 onPause() 方法)
SharedPreferences preferences = getPreferences(MODE_PRIVATE);
SharedPreferences.Editor editor = preferences.edit();
editor.clear();
String strName = textViewStrName.getText().toString();
String strRace = textViewStrRace.getText().toString();
String strClass = textViewStrClass.getText().toString();
editor.putString("strName", strName);
editor.putString("strRace", strRace);
editor.putString("strClass", strClass);
editor.commit();
(这是 onResume() 方法)
SharedPreferences preferences = getPreferences(MODE_PRIVATE);
TextView textViewStrName = (TextView) findViewById(R.id.textViewStrName);
TextView textViewStrRace = (TextView) findViewById(R.id.textViewStrRace);
TextView textViewStrClass = (TextView) findViewById(R.id.TextViewStrClass);
TextView textViewStrAlliance = (TextView) findViewById(R.id.textViewStrAlliance);
textViewStrName.setText(preferences.getString("strName", null));
textViewStrRace.setText(preferences.getString("strRace", null));
textViewStrClass.setText(preferences.getString("strClass", null));
textViewStrAlliance.setText(preferences.getString("strAlliance",
null));
运行应用程序时,我没有收到任何错误。