Android -не отображается содержимое arrayadapter, ошибок не отображается

#java #android #android-arrayadapter

#java #Android #android-arrayadapter

Вопрос:

В операции Numbers содержимое не отображается. я боролся с этим в течение последних двух дней.Я много искал и ничего не нашел.поэтому спрашиваю только я.

Вот мой код. NumbersActivity.java

 package com.example.android.miwok;

import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.widget.ListView;

import java.util.ArrayList;

public class NumbersActivity extends AppCompatActivity 

{

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_numbers);

    // Create a list of words
    ArrayList<Word> words = new ArrayList<Word>();

    words.add(new Word("one","lutti"));
    words.add(new Word("two","otikko"));
    words.add(new Word("three","tolokooosu"));
    words.add(new Word("four","oyyisa"));
    words.add(new Word("five","massokka"));
    words.add(new Word("six","temmokka"));
    words.add(new Word("seven","kenakaku"));
    words.add(new Word("eight","kawinta"));
    words.add(new Word("nine","woe"));
    words.add(new Word("ten","naaaache"));


    WordAdapter adapter = new WordAdapter(this,R.layout.list_item,words);

    ListView listView = (ListView) findViewById(R.id.list);

    listView.setAdapter(adapter);

}}
  

activity_numbers.xml

 <?xml version="1.0" encoding="utf-8"?>


<ListView xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@ id/list"
    android:orientation="vertical"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context="com.example.android.miwok.NumbersActivity"/>
  

WordAdapter.java

 package com.example.android.miwok;

import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;

import java.util.ArrayList;



public class WordAdapter extends ArrayAdapter<Word> {
    public WordAdapter(Context context, int resource) {
        super(context, resource);
    }

    public WordAdapter(NumbersActivity context, int resource, ArrayList<Word> words) {
        super(context, resource, words);
    }




    @Override
    public View getView(int position, View convertView, ViewGroup parent) {
        View listItemView = convertView;
        if (listItemView == null) {
            listItemView = LayoutInflater.from(getContext()).inflate(
                    R.layout.list_item, parent, false);
        }
        return listItemView;
    }
}
  

list_item.xml

 <?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:padding="16dp">

    <TextView
        android:id="@ id/miwok_text_view"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        tools:text="lutti"/>

    <TextView
        android:id="@ id/default_text_view"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        tools:text="one"/>
</LinearLayout>
  

Word.java

 package com.example.android.miwok;


public class Word {
    private String mDefaultTranslation;
    private String mMiwokTranslation;

    public Word(String mDefaultTranslation, String mMiwokTranslation){
        this.mDefaultTranslation = mDefaultTranslation;
        this.mMiwokTranslation = mMiwokTranslation;
    }

    public String getDefaultTranslation(){
        return mDefaultTranslation;
    }

    public String getmMiwokTranslation(){
        return mMiwokTranslation;
    }
}
  

И мой скриншот

введите описание изображения здесь

Комментарии:

1. Сначала вы должны объяснить, чего вы пытаетесь достичь, а затем как. После этого вы должны сказать, что работает, а что нет. Или что происходит вместо этого. Вы действительно думаете, что мы будем копаться в вашем коде, чтобы выяснить? Нет. Вы должны сообщить нам об этом в начале своего поста.

2. Извините, это мой первый пост,

Ответ №1:

Вы не устанавливаете данные в методе getView. сначала вам нужно создать переменную вашего пользовательского списка в адаптере, затем инициализировать ее в конструкторе, вы передаете данные, но нигде не устанавливаете в adatper. затем установите эти данные в методе getView. также вам необходимо создать класс viewholder для создания ссылки на textviews в вашем адаптере

Комментарии:

1. Привет. Спасибо за ответ. я новичок, я не понимаю, о чем вы говорите. Не могли бы вы сказать, какую строку мне следует добавить куда.