private AutoCompleteTextView mAutoView;
private Button mButton;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Log.e("TAG","onCreate");
mAutoView = (AutoCompleteTextView) findViewById(R.id.autoCompleteTextView1);
mButton = (Button) findViewById(R.id.bt);
mButton.setOnClickListener(this);
displayDate("history",mAutoView);
}
//点击保存用户输入记录
@Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.bt:
Log.e("TAG","onClickButton");
// String etString = at.getText().toString();
saveData("history",mAutoView);
break;
}
}
private void displayDate(String field,AutoCompleteTextView auto) {
Log.e("TAG","initAutoComplete");
//获取SP对象
SharedPreferences sp = getSharedPreferences("network_url", 0);
//获取字段
String longhistory = sp.getString("history", "nothing");
//把字符串分割成字符串数组
String[] hisArrays = longhistory.split(",");
//把数组显示到AutoCompleteTextView
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,android.R.layout.simple_dropdown_item_1line, hisArrays);
auto.setAdapter(adapter);
//设置从第二个字符开始提示
auto.setThreshold(1);
}
private void saveData(String field,AutoCompleteTextView auto){
Log.e("TAG","SaveData");
//获取SP对象
SharedPreferences sp =getSharedPreferences("network_url", 0);
//把用户输入数据转换数据类型
String text = auto.getText().toString();
//获取字段
String longhistory = sp.getString("history","nothing");
//一个类似于 StringBuffer 的字符串缓冲区
StringBuilder sb = new StringBuilder(longhistory);
//append 方法始终将这些字符添加到缓冲区的末端
sb.append(text+",");
//获取编辑器
Editor editor =sp.edit();
//存入数据
editor.putString("history", sb.toString());
//提交数据
editor.commit();
}
}
xml文件
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="com.xgezhang.sharepreference.MainActivity" >
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="plaese input" />
<AutoCompleteTextView
android:id="@+id/autoCompleteTextView1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
android:text="" >
<requestFocus />
</AutoCompleteTextView>
<Button
android:id="@+id/bt"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="5dp"
android:text="存储到SharePreference" />
</LinearLayout>