Pregunta

Tengo tres preguntas:

  1. Estoy usando getApplicationContext a diferencia de todos los ejemplos que he visto que acaba de decir el contexto.¿Cómo puedo obtener el contexto aquí?O es el contexto de la aplicación de multa?

  2. Hay alguna penalización de rendimiento para mí primordial de la getView en lugar de dejarse manejar por sí mismo (sólo que estoy haciendo para configurar una fuente personalizada)

  3. Hay algo que debo tener en cuenta mientras que el uso de este enfoque (como yo soy sólo tienes que copiar y pegar, sin entender lo que va a hacer si tengo 250 artículos en mi lista).Posibles escapes me puede causar?

Mi Código:

private Typeface arabicFont;
arabicFont = Typeface.createFromAsset(getAssets(), "arabicfont.ttf");

...

_arabicAdapter = new SimpleCursorAdapter(this,
                                          R.layout.book_list_item_arabic,
                                          _cursor,
                                          new String[] {"NumberArabic", "Arabic"},
                                          new int[] {R.id.txtNumber, R.id.txtBookName},
                                          CursorAdapter.NO_SELECTION)
{
    @Override
    public View getView(int position, View convertView, ViewGroup parent)
    {
        if(convertView == null)
        {
            LayoutInflater inflater = (LayoutInflater) getApplicationContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE);
            convertView = inflater.inflate(R.layout.book_list_item_arabic, parent, false);
        }

        TextView txtBookName = (TextView)convertView.findViewById(R.id.txtBookName);
        txtBookName.setTypeface(arabicFont);

        txtBookName.setText("\"العربية\"");
        return convertView;
    };
};
¿Fue útil?

Solución

public View getView(int position, View convertView, ViewGroup parent)

VIWEGROUP PADRE Ciertamente no es nulo, por lo que, parent.getContext () Tal vez la mejor manera para el contexto de Fetch

Otros consejos

Estoy usando getApplicationContext a diferencia de todos los ejemplos que he visto que acaba de decir el contexto.¿Cómo puedo obtener el contexto aquí?O es el contexto de la aplicación de multa?

Se pasa this a su constructor aquí

_arabicAdapter = new SimpleCursorAdapter(this,
                                      R.layout.book_list_item_arabic,
                                      _cursor,
                                      new String[] {"NumberArabic", "Arabic"},
                                      new int[] {R.id.txtNumber, R.id.txtBookName},
                                      CursorAdapter.NO_SELECTION)

cual seria tu Context así que usted debe tener una variable en la Adapter que es de tipo Context el que se asignan en su constructor.

Hay alguna penalización de rendimiento para mí primordial de la getView en lugar de dejarse manejar por sí mismo (sólo que estoy haciendo para configurar una fuente personalizada)

No que yo sepa pero si es sólo una fuente, a continuación, puede asignar esta en un style para el TextView que es para su uso ListView elementos.

Hay algo que debo tener en cuenta mientras que el uso de este enfoque (como yo soy sólo tienes que copiar y pegar, sin entender lo que va a hacer si tengo 250 artículos en mi lista).Posibles escapes me puede causar?

Sí, usted debe ser consciente de que copiar/pegar el código sin la comprensión es siempre problemas.Ir a través de la línea por línea y asegúrese de que usted entiende lo que todo lo que está haciendo.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top