Errore di risoluzione dei getLayoutInflater

Mentre sto per compilare il programma con il codice qui sotto, si è verificato un errore. si dice getLayoutInflater ( ) è definito. Qualcuno potrebbe per favore aiutarmi a risolvere al più presto.

 final LayoutInflater inflater = getLayoutInflater ( ); 

Grazie in anticipo.

Mettere un po di codice sorgente e il log di errore
Domanda stupida, ma. Hai dimenticato di estendere Activity classe? Inoltre, più il codice, sarebbe bello.
tenta di accettare risposta soddisfacente. Esso aumenterà la probabilità che qualcuno risponderà alle domande future, sarà di aiuto di tutta la comunità.

OriginaleL’autore Prasath | 2011-02-21

4 risposte

  1. 18

    HI Prasanth, si può provare questo

    Passaggio 1: Creare un oggetto per il Layout Inflater come illustrato di seguito:

    LayoutInflater mInflater;

    Step2: Inizializzare passando Contesto

    Context context=MyActivity.getApplicationContext();
    mInflater = LayoutInflater.from(context);

    Fase 3: In Vista meythod, è possibile intalize vista come

    public View getView(int arg0, View myView, ViewGroup parent) {
    
    
                if (convertView == null) {
    
    myView = mInflater.inflate(R.layout.mytest, null);
    }
    grazie @Sankar funziona 🙂

    OriginaleL’autore Sankar Ganesh

  2. 1

    Afaik il getLayoutInflater() è un metodo fornito dal Contesto. Se questa riga è situato in una classe che non eredita dal Contesto, questo non funziona. Passare un oggetto di Contesto e chiamare il metodo su questo oggetto.

    Edit: mi dispiace, aveva un’occhiata alle api docs, è fornito da Attività

    OriginaleL’autore Luminger

  3. 1

    Questo è ciò che funziona per me :
    Nel mio codice di attività, il contesto come parametro per il mio adattatore come questo :

    CustumAdapter myAdapter = new CustumAdapter(this, Items);

    quindi posso usarlo nel mio adattatore come questo :

    public class CustumAdapter extends BaseAdapter {
    
    ArrayList<ListItem> Items ;
    public Context context;
    
    public CustumAdapter(Context context, ArrayList<ListItem> Items) {
        this.Items = Items;
        this.context = context;
    }
    ....
    @Override
    public View getView(int position, View convertView, ViewGroup parent) {        
        LayoutInflater myInflater = LayoutInflater.from(context);
        View myview = myInflater.inflate(R.layout.row_item,null);

    Tutto funziona bene 🙂

    OriginaleL’autore Hicham Laaraj

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *