Cambiar la fuente del fragmento de lista en el fragmento de detalle

Estoy intentando implementar el fragmento usando android 4.0. He añadido los tres elementos en el fragmento de lista en mi archivo DummyContent.java

static { // Add 3 sample items. addItem(new DummyItem("1", "Videos")); addItem(new DummyItem("2", "Images")); addItem(new DummyItem("3", "Story")); } 

Estos videos, imágenes, historia están apareciendo en el lado izquierdo del fragmento en el tecleo de cada artículo él muestra la información de los detalles en el fragmento del detalle en lado derecho.

Quiero cambiar la fuente de estas vistas de lista, pero el problema es el fragmento de lista utiliza los sistemas de texto como se muestra a continuación

 public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // TODO: replace with a real list adapter. setListAdapter(new ArrayAdapter<DummyContent.DummyItem>(getActivity(), android.R.layout.simple_list_item_activated_1, android.R.id.text1, DummyContent.ITEMS)); } 

Lo que no me permite aplicar Typeface a android.R.id.text1

por favor, ayúdame

2 Solutions collect form web for “Cambiar la fuente del fragmento de lista en el fragmento de detalle”

Una forma de es extender ArrayAdapter y anular el método getView para obtener una retención de la TextView :

 public class MyArrayAdapter<T> extends ArrayAdapter<T> { public MyArrayAdapter(Context context, List<T> items) { super(context, android.R.layout.simple_list_item_activated_1, android.R.id.text1, items); } public MyArrayAdapter(Context context, T[] items) { super(context, android.R.layout.simple_list_item_activated_1, android.R.id.text1, items); } @Override public View getView(int position, View convertView, ViewGroup parent) { View view = super.getView(position, convertView, parent); TextView textView = (TextView) view.findViewById(android.R.id.text1); textView.setTypeface(Typeface.createFromAsset(getContext().getAssets(), "font/segoeuil.tff")); return view; } } 

A continuación, establecería su adaptador de la siguiente manera:

 setListAdapter(new MyArrayAdapter<DummyContent.DummyItem>(getActivity(), DummyContent.ITEMS); 

Puede utilizar su propio diseño personalizado en lugar de diseños predefinidos Crear un archivo xml como este

 <?xml version="1.0" encoding="utf-8"?> say your layout name be custom.xml <TextView xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/cust_view" android:layout_width="match_parent" android:textSize="12dp" android:padding="6dp" android:layout_height="wrap_content" /> 

Usted puede dar su propia fuente a esta disposición. Y que el adaptador como este

 setListAdapter(new ArrayAdapter<DummyContent.DummyItem>(getActivity(), R.layout.custom, android.R.id.text1, DummyContent.ITEMS)); 

Espero que esto ayude

  • Fragmento onCreate llamado varias veces cuando vuelve a cargar el Fragmento
  • Error al inflar el fragmento de clase - id / illegalargumentexception duplicado?
  • Disposición de Android - peso de diseño y weightsum
  • GetSupportLoaderManager () utiliza ids iguales en fragmentos diferentes?
  • MultiChoiceModeListener que causa problemas con SherlockListFragment
  • ListView vacío a pesar de los elementos agregados al adaptador en algún momento al reanudar la aplicación
  • ListView muestra brevemente el mensaje vacío antes de cargar los datos
  • Android: ListFragment: Cómo actualizar la lista
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.