2017-01-03 6 views
1

Почему я получаю ошибку «не удается разрешить list_item» Я расширяю суперкласс, но не могу получить доступ к list_item. почему я здесь не хватает? Это часть учебного курса uudacity miwok. в Android Studio. СпасибоПочему я получаю ошибку в list_item, если унаследован от суперкласса

package com.example.android.miwok; 

import android.app.Activity; 
import android.support.annotation.NonNull; 
import android.view.LayoutInflater; 
import android.view.View; 
import android.view.ViewGroup; 
import android.widget.ArrayAdapter; 
import android.widget.TextView; 

import java.util.ArrayList; 

/** 
* Created by george on 1/3/17. 
*/ 

public class WordAdapter extends ArrayAdapter<Word> { 

    /** 
    * This is our own custom constructor (it doesn't mirror a superclass constructor). 
    * The context is used to inflate the layout file, and the list is the data we want 
    * to populate into the lists. 
    * 
    * @param context  The current context. Used to inflate the layout file. 
    * @param WordAdapter A List of AndroidFlavor objects to display in a list 
    */ 
    public WordAdapter(Activity context, ArrayList<Word> Word) { 
     // Here, we initialize the ArrayAdapter's internal storage for the context and the list. 
     // the second argument is used when the ArrayAdapter is populating a single TextView. 
     // Because this is a custom adapter for two TextViews and an ImageView, the adapter is not 
     // going to use this second argument, so it can be any value. Here, we used 0. 
     super(context, 0, Word); 
    } 

    @Override 
    public View getView(int position, View convertView, ViewGroup parent) { 
     // Check if the existing view is being reused, otherwise inflate the view 
     View listItemView = convertView; 
     if(listItemView == null) { 
      listItemView = LayoutInflater.from(getContext()).inflate(R.layout.list_item, parent, false); 
     } 

     // Get the {@link AndroidFlavor} object located at this position in the list 
     Word currentWord = getItem(position); 

     // Find the TextView in the list_item.xml layout with the ID version_name 
     TextView miwokTextView = (TextView) listItemView.findViewById(R.id.list_items); 
     // Get the version name from the current AndroidFlavor object and 
     // set this text on the name TextView 
     miwokTextView.setText(currentWord.getMiwokTranslation()); 

     // Find the TextView in the list_item.xml layout with the ID version_number 
     TextView defaultTextView = (TextView) listItemView.findViewById(R.id.miwok_text_view); 
     // Get the version number from the current AndroidFlavor object and 
     // set this text on the number TextView 
     defaultTextView.setText(currentWord.getmDefaultTranslation()); 

     // Return the whole list item layout (containing 2 TextViews and an ImageView) 
     // so that it can be shown in the ListView 
     return listItemView; 
    } 
} 
+0

Можете ли вы поделиться макет list_item.xml? –

+0

Я слежу за инструкцией по приложению miwok относительно смелости, и я не видел, где был создан list_item.xml. И даже не знаю, что в нем. – miatech

ответ

0

Я думаю, у вас есть аналогичный вопрос: this one.

Что вам нужно сделать, так это создать list_item.xml в папке вашего макета.

list_item.xml:

<?xml version="1.0" encoding="utf-8"?> 
<TextView xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/miwok_text_view" 
    android:layout_width="match_parent" 
    android:layout_height="55dp" 
    android:textSize="15sp" 
    android:paddingTop="3dp" 
    android:paddingBottom="3dp" 
    android:textColor="#000000"/> 
+0

Откуда вы знаете, что он содержит TextView? – miatech

+0

Я определил его как корневой элемент для xml. –