我的活动中有 TextViews(DropDownList)和 EditTexts 。
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<TextView
android:id="@+DropDownList/tv_SubBrand"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<TextView
android:id="@+DropDownList/tv_InfoType"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<EditText
android:id="@+id/txt_Remarks"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
</LinearLayout>
我想将用户输入保存到我的数据库,但是我的Textview存在问题,因为它是DropDownList,其中DropDownList中有复选框,可以处理多个选项。另外,我无法将其投射到OnCreate。
除了使用SharedPreferences之外还有其他解决方案吗?我可以在使用ArrayList时解决它吗?如果是的话,你能告诉我怎么做吗?
答案 0 :(得分:1)
使用SharedPreferences
中的onPause
获取当前Activity
,如下所示,并将数据发送到以下其他活动:
@Override
protected void onPause()
{
super.onPause();
SharedPreferences preferences = getSharedPreferences("sharedPrefs", 0);
SharedPreferences.Editor editor = preferences.edit();
editor.putString("SearchText",edt.getText().toString());
editor.putString("Text1",<Your TextView1>.getText().toString());
editor.putString("Text2",<Your TextView2>.getText().toString());
editor.commit();
}
在其他两项活动中,从共享首选项中获取数据,如下所示:
SharedPreferences preferences = getSharedPreferences("sharedPrefs", 0);
String edtText = preferences.getString("SearchText","");
String strTextView1 = preferences.getString("Text1","");
String strTextView2 = preferences.getString("Text2","");
答案 1 :(得分:0)
使用SharedPreferences。有一个很好的线程here。使用它,您可以将数字保存在首选项文件中(仅对当前应用程序可见,而不在文件系统中可见)。像这样:
private final String PREFS_NAME = "savefile";
private final String KEY_SUBBRAND = "subb";
String strWithTheInput = ""
String strSavedValue = "";
SharedPreferences sharedPreferences = ctx.getSharedPreferences(PREFS_NAME, Context.MODE_PRIVATE);
//将手机放入档案
SharedPreferences.Editor editor = sharedPreferences.edit();
editor.putString(KEY_SUBBRAND, strWithTheInput);
editor.commit();
//检索号码
strSavedValue = sharedPreferences.getString("subb", null);