Пользовательский ListView во фрагменте, какие файлы мне нужны? - PullRequest
0 голосов
/ 14 июня 2019

Я уже создал это с помощью специального адаптера в другом проекте, но я не использовал фрагменты.Теперь у меня есть проект с использованием фрагментов, и я отображаю список в фрагменте.Я не знаю или не могу найти точно, какие правила и какие классы / java-файлы мне нужно, чтобы это работало во фрагменте.

Каждый пример наИнтернет, который я использовал, каким-то образом приводит к ошибке, и, поскольку я не понимаю всех аспектов того, как это делается, я не могу исправить это самостоятельно.

В моем предыдущем проекте я сделалthis (CalculationsActivity.java):

public class CalculationsActivity extends AppCompatActivity implements Serializable {
 //content of my class
}

class CustomAdapter extends BaseAdapter {

@Override
public int getCount() {
    return arrayLi.size();
}

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

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

@Override
public View getView(int i, View view, ViewGroup viewGroup) {

    view = getLayoutInflater().inflate(R.layout.customlayout, null);

    ImageView imageView = (ImageView) view.findViewById(R.id.imageView);
    TextView content = (TextView) view.findViewById(R.id.content);
    TextView date = (TextView) view.findViewById(R.id.date);

    imageView.setImageResource(R.drawable.calcer);
    String[] convertedArrLi = arrayLi.toArray(new String[arrayLi.size()]);
    String[] convertedDates = dates.toArray(new String[dates.size()]);

    content.setText(convertedArrLi[i]);
    date.setText(convertedDates[i]);

    return view;
 }
}

И после этого я установил адаптер для моего списка.Этот класс находился в том же Java-файле, что и действие, в котором отображалось представление списка. Если я сделаю это в своем фрагменте, я получу кучу красных линий.getLayoutInflater () и переменные из моего другого класса выше будут красного цвета.

Насколько я понимаю, пока вам нужны MainActivity.java, MyFragment.java и Adapter.java.Чтобы ваш просмотр списка работал с вашим массивом, вам нужно установить адаптер, включающий текущую активность и массив, который вы хотите использовать.Если кто-то может объяснить, какие файлы мне действительно нужны и как они работают вместе (отправлять информацию друг другу и запускать друг друга), я был бы признателен.

Примечание: я должен использовать пользовательский адаптер.

1 Ответ

0 голосов
/ 15 июня 2019

Вы можете использовать свой собственный адаптер в действии и во фрагменте, разницы нет.Можете ли вы предоставить скриншот вашей группы красных линий?

Также ваш вопрос неверен: «какие файлы мне нужны?».Вам нужны классы, первый класс для действия или фрагмент, чтобы создать / объявить / инициализировать второй класс (пользовательский адаптер) и заполнить его данными.

...