ApiDemos学习笔记App-Activity篇(10)——Redirection

        这个示例同时使用了Activity间传递数据和SharedPreferences储存数据。

主要是一个逻辑的实现,下面是我整理的示例实现的流程:

第一步:主界面RedirectEnter实现跳转:
Intent intent = new Intent(RedirectEnter.this, RedirectMain.class);
            startActivity(intent);


第二步:跳转到RedirectMain进行判定,SharedPreferences中有数据停留在RedirectMain并显示存储的数据,否则跳转到RedirectGetter。
if (!loadPrefs()) {
            Intent intent = new Intent(this, RedirectGetter.class);
            startActivityForResult(intent, INIT_TEXT_REQUEST);
        }


private final boolean loadPrefs() {
        SharedPreferences preferences = getSharedPreferences("RedirectData", 0);

        mTextPref = preferences.getString("text", null);
        if (mTextPref != null) {
            TextView text = (TextView)findViewById(R.id.text);
            text.setText(mTextPref);
            return true;
        }

        return false;
    }


第三步:如果跳转到了RedirectGetter,获取数据并返回到RedirectMain
SharedPreferences preferences = getSharedPreferences("RedirectData", 0);
            SharedPreferences.Editor editor = preferences.edit();
            editor.putString("text", mText.getText().toString());

            if (editor.commit()) {
                setResult(RESULT_OK);
            }

            finish();

你可能感兴趣的:(Activity)