2017-12-14 5 views
0

사용자가 확대/축소 할 수 있도록 내 'TextViews'에 대한 사용자 정의 확대/축소를 만들었습니다. 나는 줌의 위치를 ​​잡고 싶었으므로 다음 번에 그들이 애플 리케이션에 올 때 다시 확대 할 필요가 없다. 그게 가장 좋은 방법은 무엇인지 궁금 해서요? 감사.텍스트 저장 크기 환경 설정

private void getTextViewSize() { 
    boolean gotTextViewsize = false; 
    boolean gotDocumentViewsize = false; 
    for (int i = 0; i < linearLayout.getChildCount(); i++) { 
     if (linearLayout.getChildAt(i) instanceof TextView) { 
       (prefs.edit().putFloat("textViewSize",((TextView) linearLayout.getChildAt(i)).getTextSize())).commit(); 
      gotTextViewsize = true; 
     }else if(linearLayout.getChildAt(i) instanceof DocumentView){ 
      (prefs.edit().putFloat("documentViewSize",((DocumentView) linearLayout.getChildAt(i)).getDocumentLayoutParams().getTextSize())).commit(); 
      gotDocumentViewsize = true; 
     } 

     if(gotDocumentViewsize && gotTextViewsize){ 
      return; 
     } 
    } 
} 

이 모든 줌 후에 호출되는 텍스트 뷰의 크기를 가져옵니다

나는이 방법

가져 오기 텍스트 크기를 가지고있다.

다음이 설정되어 텍스트 크기 :

private void setTextSize() { 

    for (int i = 0; i < linearLayout.getChildCount(); i++) { 
     if (linearLayout.getChildAt(i) instanceof TextView) { 
      if (android.os.Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { 
       ((TextView) linearLayout.getChildAt(i)).setTextSize(prefs.getFloat("textViewSize", 15.0f)); 
      } else { 
       ((TextView) linearLayout.getChildAt(i)).setTextSize(prefs.getFloat("textViewSize", 14.0f)); 
      } 

     }else if (linearLayout.getChildAt(i) instanceof DocumentView){ 
      ((DocumentView) linearLayout.getChildAt(i)).getDocumentLayoutParams().setTextSize(prefs.getFloat("documentViewSize", 15.0f)); 
     } 
    } 
} 

이 있지만, 그것이보다 훨씬 더 큰 수는 했다 얼마나 크기를 넣어해야합니다. 왜 그런가요?

답변

3

SharedPreferences를 사용하십시오. 사용자가 활동을 종료 할 때까지 그리고 사용자가 앱 데이터를 지울 때까지 유지됩니다.

SharedPreferences pref = getApplicationContext().getSharedPreferences("MyPref"); 
Editor editor = pref.edit(); 
editor.putInt("zoomLevel",yourZoomLevel); 

사용 검색 :

yourZoomLevel=editor.getInt("zoomLevel",0); 
+0

내가 즉, 그러나 업데이트 된 코드를 확인하시기 바랍니다했다, 그것은 여전히 ​​작동하지 않습니다. –

관련 문제