fonte e cor do listview da mudança do androide

Eu encontrei várias maneiras diferentes de realizar isso, mas não tenho certeza qual é o melhor para o meu cenário.

Este é o meu código Java para o listview:

ListView lv;
lv = (ListView) findViewById(R.id.favList);

Este é o código xml da lista:

<ListView
        android:id="@+id/favList"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginBottom="40dp"
        android:layout_marginLeft="30dp"
        android:layout_marginRight="30dp"
        android:layout_marginTop="20dp"
        android:background="@android:color/transparent"
        android:cacheColorHint="@android:color/transparent"
        android:listSelector="@android:color/transparent" >
    </ListView>

Para uma exibição de texto, gostaria de adicionar:

final Typeface fontList = Typeface.createFromAsset(assets, "optima-extra-black.ttf");
lv.setTypeface(fontList);

Mas isso não funciona para listviews. Como eu mudo minha fonte neste caso?

Oke eu estou quase lá ... Eu preciso acessar meus ativos, mas não posso de dentro do meu adaptador personalizado. Eu tentei usarfinal AssetManager assets = this.getAssets(); mas isso não vai me levar mais longe ..

Como lidar com isso?

    class Myadapter extends BaseAdapter {

    LayoutInflater lif;
    ImageView sideArrow;
    TextView tv;


    public Myadapter(Context ctx) {
        lif = (LayoutInflater) ctx
                .getSystemService(LAYOUT_INFLATER_SERVICE);

    }

    @Override
    public int getCount() {

        return favarets.size();
    }

    @Override
    public Object getItem(int position) {
        return position;
    }

    @Override
    public long getItemId(int position) {
        return position;
    }

    @Override
    public View getView(int position, View convertView, ViewGroup parent) {

        View vi = convertView;
        if (convertView == null)
            vi = lif.inflate(R.layout.inflate, null);
        sideArrow = (ImageView) vi.findViewById(R.id.imageViewsidemark);

        tv = (TextView) vi.findViewById(R.id.textFav);
        tv.setText(favarets.get(position));
        final AssetManager assets = this.getAssets();
        final Typeface tvFont = Typeface.createFromAsset(assets, "OPTIMA.TTF");
        tv.setTypeface(tvFont);

        tv.setTextColor(Color.BLACK);

        return vi;

questionAnswers(4)

yourAnswerToTheQuestion