用sharepreference保存输入框中的内容
来源:互联网 发布:mugen角色知乎 编辑:程序博客网 时间:2024/06/05 15:00
package com.cia.settings;
import android.app.Activity;
import android.content.SharedPreferences;
import android.content.SharedPreferences.Editor;
import android.os.Bundle;
import android.view.KeyEvent;
import android.widget.EditText;
import android.widget.TextView;
public class MainActivity extends Activity
{
private EditText et_server,et_backup,et_upgrade;
private TextView tv_show_version,tv_show_mac;
private SharedPreferences sharedPrefrences;
private Editor editor;
// 要存储的文件名
private static final String FILENAME = "filename";
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
et_server = (EditText) findViewById(R.id.edit_server);
et_backup = (EditText) findViewById(R.id.edit_backup);
et_upgrade = (EditText) findViewById(R.id.edit_upgrade);
sharedPrefrences = this.getSharedPreferences(FILENAME, MODE_WORLD_READABLE);
String r_server = sharedPrefrences.getString("server", "");
String r_backup = sharedPrefrences.getString("backup", "");
String r_upgrade= sharedPrefrences.getString("upgrade", "");
et_server.setText(r_server);
et_backup.setText(r_backup);
et_upgrade.setText(r_upgrade);
}
//在点击退出时保存数据
@Override
public boolean onKeyDown(int keyCode, KeyEvent event)
{
// 得到编辑器对象
editor = getSharedPreferences(FILENAME, MODE_WORLD_WRITEABLE).edit();
if(keyCode==KeyEvent.KEYCODE_BACK)
{
String server=et_server.getText().toString();
String backup=et_backup.getText().toString();
String upgrade=et_upgrade.getText().toString();
editor.putString("server", server);
editor.putString("backup", backup);
editor.putString("upgrade", upgrade);
editor.commit();
}
return super.onKeyDown(keyCode, event);
}
第二种方法, if class extends frame.
package com.android.settings;
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import android.app.Fragment;
import android.content.Context;
import android.content.SharedPreferences;
import android.content.SharedPreferences.Editor;
import android.os.Build;
import android.os.Bundle;
import android.os.SystemProperties;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
public class JumpTvSettings extends Fragment implements OnClickListener
{
private EditText et_server, et_backup, et_upgrade;
private TextView tv_show_version, tv_show_mac;
private Editor editor;
private Button btn;
private static final String TAG = "JumpTvSettings_mac";
private static final String LOG_TAG="jumTv_Settings_version";
private SharedPreferences mPrefs;
// 要存储的文件名
private static final String FILENAME = "filename_jumpTv";
private static final String CONFIG_PATH = "/sys/class/efuse/mac";
private static final String FILENAME_PROC_VERSION = "/proc/version";
private static final String KEY_FIRMWARE_VERSION = "firmware_version";
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState)
{
View v=inflater.inflate(R.layout.jump_page, container, false);
et_server = (EditText)v.findViewById(R.id.edit_server);
et_backup = (EditText)v.findViewById(R.id.edit_backup);
et_upgrade = (EditText)v.findViewById(R.id.edit_upgrade);
btn=(Button)v.findViewById(R.id.btn_submit);
btn.setOnClickListener(this);
et_upgrade = (EditText)v.findViewById(R.id.edit_upgrade);
tv_show_version = (TextView)v.findViewById(R.id.txt_show_version);
tv_show_mac = (TextView)v.findViewById(R.id.txt_show_mac);
mPrefs = getActivity().getSharedPreferences(FILENAME, Context.MODE_WORLD_READABLE);
String r_server = mPrefs.getString("server", "");
String r_backup = mPrefs.getString("backup", "");
String r_upgrade= mPrefs.getString("upgrade", "");
et_server.setText(r_server);
et_backup.setText(r_backup);
et_upgrade.setText(r_upgrade);
tv_show_mac.setText(new StringBuilder(this.getEthMacfromEfuse()).toString());
tv_show_version.setText(Build.VERSION.RELEASE);
tv_show_version.setEnabled(true);
return v;
}
/**
* Reads a line from the specified file.
* @param filename the file to read from
* @return the first line, if any.
* @throws IOException if the file couldn't be read
*/
private String readLine(String filename) throws IOException {
BufferedReader reader = new BufferedReader(new FileReader(filename), 256);
try {
return reader.readLine();
} finally {
reader.close();
}
}
private String getFormattedKernelVersion() {
String procVersionStr;
try {
procVersionStr = readLine(FILENAME_PROC_VERSION);
final String PROC_VERSION_REGEX =
"\\w+\\s+" + /* ignore: Linux */
"\\w+\\s+" + /* ignore: version */
"([^\\s]+)\\s+" + /* group 1: 2.6.22-omap1 */
"错误!超链接引用无效。" + /* group 2: (xxxxxx@xxxxx.constant) */
"错误!超链接引用无效。" + /* ignore: (gcc ..) */
"([^\\s]+)\\s+" + /* group 3: #26 */
"(?:PREEMPT\\s+)?" + /* ignore: PREEMPT (optional) */
"(.+)"; /* group 4: date */
Pattern p = Pattern.compile(PROC_VERSION_REGEX);
Matcher m = p.matcher(procVersionStr);
if (!m.matches()) {
Log.e(LOG_TAG, "Regex did not match on /proc/version: " + procVersionStr);
return "Unavailable";
} else if (m.groupCount() < 4) {
Log.e(LOG_TAG, "Regex match on /proc/version only returned " + m.groupCount()
+ " groups");
return "Unavailable";
} else {
return (new StringBuilder(m.group(1)).append("\n").append(
m.group(2)).append(" ").append(m.group(3)).append("\n")
.append(m.group(4))).toString();
}
} catch (IOException e) {
Log.e(LOG_TAG,
"IO Exception when getting kernel version for Device Info screen",
e);
return "Unavailable";
}
}
// 获取mac地址
private String getEthMacfromEfuse()
{
String sn = null;
try
{
BufferedReader reader = new BufferedReader(new FileReader(CONFIG_PATH), 12);
try
{
sn = reader.readLine();
}finally
{
reader.close();
}
Log.d(TAG, "/sys/class/efuse/mac: " + sn);
if (sn.equals("00:00:00:00:00:00"))
return SystemProperties.get("ubootenv.var.ethaddr",getString(R.string.status_unavailable));
else
return sn;
} catch (IOException e)
{
Log.e(TAG,"IO Exception when getting serial number for Device Info screen",e);
// return "null";
return SystemProperties.get("ubootenv.var.ethaddr",getString(R.string.status_unavailable));
}
}
@Override
public void onPause()
{
//界面失去控制权时保存数据
editor =getActivity().getSharedPreferences(FILENAME, Context.MODE_WORLD_WRITEABLE).edit();
String server = et_server.getText().toString();
String backup = et_backup.getText().toString();
String upgrade = et_upgrade.getText().toString();
editor.putString("server", server);
editor.putString("backup", backup);
editor.putString("upgrade", upgrade);
editor.commit();
super.onPause();
}
public void onSaveInstanceState(Bundle outState) {
//界面销毁之前保存数据
super.onSaveInstanceState(outState);
outState.putString("server", et_server.getText().toString());
outState.putString("server", et_backup.getText().toString());
outState.putString("server", et_upgrade.getText().toString());
}
}
/*
* 取文件中的值
*/
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Context context = null;
try {
context = createPackageContext("com.android.settings", Context.CONTEXT_IGNORE_SECURITY);
} catch (NameNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
SharedPreferences settings = context.getSharedPreferences("filename_jumpTv",
Context.MODE_WORLD_READABLE);
String server = settings.getString("server", " ");
String backup = settings.getString("backup", " ");
Log.d("SharedPreferences", "server:" + server + ", backup:" + backup);
Log.d("SharedPreferences", "获取数据成功");
Uri server_uri = Uri.parse(server);
Uri backup_uri = Uri.parse(backup);
Intent intent1 = new Intent(Intent.ACTION_VIEW, server_uri);
Intent intent2 = new Intent(Intent.ACTION_VIEW, backup_uri);
startActivity(intent1);
startActivity(intent2);
}
- 用sharepreference保存输入框中的内容
- android用sharepreference保存输入框中的内容
- android用sharepreference保存输入框中的内容
- 使用SharePreference保存用户输入的内容
- Android用sharepreference保存文件
- 安卓android sharepreference数据存储,保存输入框里面的数据
- sharepreference(偏好参数保存)
- sharepreference 保存状态数据
- SharePreference保存list
- 用SharePreference实现简单的保存账号密码
- textarea输入的内容保存到数据库,用div显示
- 获得QQ聊天输入框中的内容
- 获得QQ聊天输入框中的内容
- h5获取输入框中的内容
- ListView中的item存在EditText时,焦点问题及输入内容保存解决方法
- 根据输入框中的内容更改return的显示内容
- C# 保存所有TextBox,下次全部装入保存界面的输入框内容
- 保存webbrowser中的HTML内容
- Ubuntu 12.04中文输入法的安装
- 子数组最大乘积
- XCODE之PROJECT TARGETS
- Postgresql:命令备份与还原
- Missing artifact com.sun:tools:jar:1.5.0
- 用sharepreference保存输入框中的内容
- Using JSONP in ASP.NET MVC
- spring jdbc事务配置demo
- static关键字总结
- 聊一聊我在移动平台混合开发的经验
- 判断字段是否全部为数字函数
- Win2008 r2 远程桌面授权已过期的解决办法
- VMware虚拟机瘦身技巧
- yum不小心删除了,如何安装?