2016-09-27 11 views
0

私は文字列のArrayListを持っています。私はそれを行うことができますし、その文字列を取得していますが、私はどのようにキャンバスonDrawメソッドと描画キャンバスでその文字列を使用することができます知りたい。SharedPreferenceを使用してCanvasに文字列を描画する方法は?

ここで私は、画面上のテキストを描画し、その文字列今

public void openString(){ 


    SharedPreferences sharedPrefs = PreferenceManager.getDefaultSharedPreferences(getContext()); 
    Gson gson = new Gson(); 
    String json = sharedPrefs.getString("kEy", null); 


} 

を取得するためのArrayListに保存弦楽のため

if (text_c == 0 && c.getImage() == 4) { 

     textsize = c.getTextsize(); 
     canvas.drawText(c.getEdittext(), startX, startY, mPaint); 
     mPaint.setStyle(Style.FILL); 
     c.setImage(0); 


    } 


for (EdtText l : editTexts) { 


     mPaint.setTextSize(l.textsize); 
     canvas.drawText(l.EdtText1, l.startX, l.stopY, mPaint); 
     c.setstringDraw(editTexts.toString()); 
    } 

方法

public void saveString() { 


    String sp=c.getStringDraw(); 



    SharedPreferences sharedPrefs = PreferenceManager.getDefaultSharedPreferences(getContext()); 
    SharedPreferences.Editor editor = sharedPrefs.edit(); 
    editor.putString("kEy", sp); 
    editor.commit(); 

} 

方法でそれを保存、私が欲しいのですsharedpreferenceに保存された文字列を取得し、onDrawメソッドで描画したい場合

答えて

0

ここで私は

....それだ方法

if (text_save == 0) { 

     openString(); 
     text_save++; 
    } 

を呼び出します。openStringます。openString方法onDrawメソッドで

public void openString(){ 


SharedPreferences sharedPrefs = PreferenceManager.getDefaultSharedPreferences(getContext()); 
Gson gson = new Gson(); 
String json = sharedPrefs.getString("kEy", null); 

    Type type = new TypeToken<ArrayList<EdtText>>() { 
    }.getType(); 
    ArrayList<EdtText> arrayList = gson.fromJson(json, type); 


    if (arrayList != null) { 
     editTexts = arrayList; 
    } 

よりもこの行を追加します。

関連する問題