linSir's blog

dream it possible

安卓中的数据存储

安卓中的数据存储:
1.xml(share preference)
2.Bianray File(file)
3.关系型数据库 SQLite3
4.网络访问 Network,分为socket,http,https

由于本人也在学习阶段,写此博客也是为了日后复习方便,所以今天我只介绍share preference这种最为简单的存储方式,日后再为大家介绍其余的三种方式。

share preference的使用方式是get shaeredpreferences(),get preferences();

Call edit() to get a SharedPreferences Editor
Add values with methods such as putBoolean() and putString()
Comint the new values with commit

这里面简单的涉及到了一点键值对的知识,即key,value;

官方给我用的代码为:

这里写图片描述

然后为了让大家更好的理解,我给大家举了一个 非常好理解的例子,就是让系统自动保存我们的用户名,然后我们可以在ddms里面的data文件夹里面找到我们保存的内容,是以.xml的形式进行存储的。

public class MainActivity extends AppCompatActivity {
    SharedPreferences mSharedPreferences;
    private EditText editText1;
    private CheckBox checkBox1;
    private SharedPreferences.Editor editor;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        initviews();
    }

    public void initviews() {
        //得到对象
        editText1 = (EditText) findViewById(R.id.editText);
        checkBox1 = (CheckBox) findViewById(R.id.bt_wifi);
        //第一种方法:
        // mSharedPreferences = getSharedPreferences("sundy", MODE_PRIVATE);

        //第二种方法:

        mSharedPreferences = PreferenceManager.getDefaultSharedPreferences(this);


//        if (mSharedPreferences!=null){
//
//            mSharedPreferences.getBoolean("wifi_toggle",false);
//            checkBox1.setChecked(mSharedPreferences.getBoolean("wifi_toogle", false));
//            editText1.setText(mSharedPreferences.getString("your_name",""));
//        }else{
//            Toast.makeText(MainActivity.this, "--8888", Toast.LENGTH_SHORT).show();
//            Log.i("sys","--sir---no xml");
//
//        }


        Button button1 = (Button) findViewById(R.id.button);
        button1.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {

                //编辑(并不是真正的编辑 打开对象)
                editor = mSharedPreferences.edit();

                editor.putBoolean("wifi_toggle", checkBox1.isChecked());


                editor.putString("your_name", editText1.getText().toString());

                //真正的提交事务
                editor.commit();

                Toast.makeText(MainActivity.this, "修改保存", Toast.LENGTH_SHORT).show();
            }
        });


    }
}

这样写完了之后呢,我们便可以在关掉我们的程序之后,再次开启的时候看到我们上次写的内容。
以上便是我对于第一种方式的简单的整理,之后我还会为大家讲解其余的方式。

阅读更多
版权声明:本文为linSir原创文章,欢迎转载,请注明出处。 https://blog.csdn.net/Lin_Sir6/article/details/49963989
个人分类: Android
上一篇用Android实现串扫描操作,将带有“111”字符的输出1,否则输出0
下一篇探索ListActivity
想对作者说点什么? 我来说一句

Android中的数据存储

2013年08月14日 60KB 下载

数据存储之Preferences

2012年10月13日 25KB 下载

Android应用开发6(数据存储).

2011年12月23日 819KB 下载

没有更多推荐了,返回首页

关闭
关闭