2013-10-02 4 views
1

목록보기 (항목에 textview 있음)와 내 활동의 버튼이 있습니다. 로더 메커니즘을 사용하여 목록 뷰에 데이터를로드하고 있습니다. 버튼을 클릭하면 앱의 설정 활동이 시작됩니다. 사용자는 설정 화면에서 글꼴 종류와 크기를 변경할 수 있습니다. 그리고 기본 설정에서 글꼴 값을 변경하고 내 사용자 정의 어댑터 클래스의 bindView() 메서드 내에서 텍스트 뷰로 설정했습니다. 그러나 나는 활동을 다시 시작할 때만 listview에서 변경된 글꼴을 볼 수 있습니다. 사용자가 설정 화면에서 뒤로 버튼을 클릭하자마자 변경된 글꼴 크기 및 유형을 목록보기 항목에 어떻게 적용 할 수 있습니까? 글꼴을 변경하기 위해서만 목록보기를 새로 고칠 수 있습니까? 나를 안내 해줘.android에서 채워진 목록보기 항목의 글꼴을 변경하는 방법

나는 목록보기를 새로 고치려고했으나 어댑터 데이터 집합이 변경 될 때만 알려주기 때문에 아무 쓸모가 없었다.

@Override 
public void onResume() { 
    super.onResume(); 
    adapter.notifyDataSetChanged(); 
} 

답변

3

전화 글꼴을 변경 한 후이 방법을. 이 매개 변수에서 "v"는 listview 또는 listview 상위 항목이고 "f"는 메소드의 글꼴입니다.

/** 
* To apply custom font for whole activity 
*/ 
public static void applyFontForWholeActivity(final View v) { 
    // Typeface fontToSet = Typeface.createFromAsset(v.getContext() 
    // .getAssets(), "fonts/EUROSTILE_BOLD.TTF"); 

    try { 
     if (v instanceof ViewGroup) { 
      ViewGroup vg = (ViewGroup) v; 
      for (int i = 0; i < vg.getChildCount(); i++) { 
       View child = vg.getChildAt(i); 
       applyFontForWholeActivity(child); 
      } 
     } else if (v instanceof TextView) { 
      TextView tv = (TextView) v; 
      tv.setTypeface(ActivityUtils.fontToSetGlobal); 
     } 
    } catch (Exception e) { 
     e.printStackTrace(); 
     // ignore 
    } 
} 
+0

이것은 정말 좋습니다. 고마워. – user1670443

0

다시 adapater을 설정

@Override 
    public void onResume() { 
     super.onResume(); 
     listview.setAdapter(adapter); 
     adapter.notifyDataSetChanged(); 
    } 
+0

어댑터를 재설정하려고했지만 예상 한 결과를 얻을 수 없습니다. – user1670443

관련 문제