【问题标题】:Custom ListView in a fragment, what files do I need?片段中的自定义ListView,我需要什么文件?
【发布时间】:2019-10-29 09:43:37
【问题描述】:

我已经在另一个项目中使用自定义适配器创建了这个,但我没有使用片段。我现在有一个使用片段的项目,并在片段中显示列表视图。我不知道或无法准确找到在片段中工作需要哪些 规则 以及哪些 类/java 文件

我使用的互联网上的每个示例都会以某种方式出现错误,由于我不了解如何完成此操作的各个方面,因此我无法自行修复。

在我之前的项目中,我是这样做的(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。要使您的列表视图与您的数组一起使用,您需要设置一个适配器,包括当前活动和您要使用的数组。如果有人可以解释我实际需要哪些文件以及它们如何协同工作(相互发送信息并相互启动),我将不胜感激。

注意:我必须使用自定义适配器。

【问题讨论】:

    标签: java android listview android-fragments baseadapter


    【解决方案1】:

    您可以在活动和片段中使用自定义适配器,没有区别。你能提供你那一堆红线的截图吗?

    您的问题也不正确:“我需要什么文件?”。您需要类,活动或片段的第一类来创建/声明/初始化第二类(自定义适配器)并用数据填充它。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-04-01
      • 2017-02-16
      • 1970-01-01
      • 2019-04-14
      • 2017-01-19
      • 1970-01-01
      相关资源
      最近更新 更多