如何在图像按钮上显示已保存的textview

时间:2014-10-21 10:03:50

标签: android sharedpreferences

功能说明:

图像按钮(在辅助应用程序上调用),允许用户输入和输入文本,手写以及键盘输入。然后,用户可以选择保存文本。当用户退出辅助应用程序时,图像按钮应显示已保存的文本。

正版:

打算使用共享首选项方法,但仍未显示保存的文本。谁能请帮忙。以下是使用的代码。

代码:

//EDITED VERSION TO CALL OUT THE SECONDARY APPLICATION FOR USER TO INPUT TEXTandr
private void addListenerOnButtonMyScript() {
    // TODO Auto-generated method stub
    imageButton = (ImageButton) findViewById(R.id.imageButton_myscript);

    imageButton.setOnClickListener(new OnClickListener() {

        public void onClick(View arg0) {

            Log.i("SingleViewActivity:onCreate:addListenerOnButtonMyScript" + ":onKey" , "Initiate myScript:");

            final Intent intent = new Intent();
            intent.setClassName("com.visionobjects.textwidget.sample", "com.visionobjects.textwidget.sample.SampleActivity");
            startActivity(intent);
            SharedPreferences pref = getSharedPreferences(getString(R.string.pref_text),MODE_PRIVATE); 
            Log.i("Calling on Shared Preferences" , "Shared Preferences to pref_text:" + getString(R.string.pref_text) );
            SharedPreferences.Editor editor = pref.edit();
            editor.putString(getString(R.string.pref_text),"");
            editor.commit();
        }
    });
}
//EDITED VERSION TO CALL ON SHARED PREFERENCES FUNCTION TO DISPLAY EDITED TEXT FROM MY_SCRIPT-20/10/2014
private void loadSavedPreferences(){

    SharedPreferences pref = getSharedPreferences(getString(R.string.pref_text),MODE_PRIVATE);
    SharedPreferences.Editor editor= pref.edit();
    editor.commit();

}

的strings.xml

<resources>

<string name="app_name">SalesBase</string>
<string name ="pref_text">StandardPreferences</string>
<string name="contacts_default">Contacts Details\n名字:HARRY\n公司:BARTENDER\n路名:123, Road Name\nZip:Zip\nState:State\nMobile:012-345-6789\nOffice:12-345-678\n</string>
</resources>

1 个答案:

答案 0 :(得分:0)

您使用错误的代码加载数据。如果loadSavedPreferences()是获取数据的最终代码,那么您将无法获得任何数据。试试这个

         private void loadSavedPreferences(){

         SharedPreferences pref = getSharedPreferences(getString(R.string.pref_text),MODE_PRIVATE);
         String data = prefs.getString(getString(R.string.pref_text), "");

   }

但是,我建议您使用不同的键作为首选项名称和您尝试保存的数据。

 SharedPreferences pref = getSharedPreferences(getString(R.string.pref_text),MODE_PRIVATE); 

        SharedPreferences.Editor editor = pref.edit();

使用另一个键来保存此行中的数据,显然值是您要保存的数据。使用这样的东西。

        editor.putString(key,value);
        editor.commit();

当您想要显示数据时,请使用相同的密钥来获取数据。

     String data = prefs.getString(key, "");

也看看这个。 Android Shared preferences example