findViewById在适配器的getView中返回null

时间:2015-10-04 20:20:38

标签: android findviewbyid

我试图理解为什么当我在我的自定义适配器的getView()中重用我的视图时,findViewById总是返回null。

1)下图显示了我的ListView。很基本的。

enter image description here

2)我已经定义了另一个名为selected_apps_button.xml的xml文件,该文件是将被添加到上面的ListView中的视图。这是图像

enter image description here

3)以下是如何在第2步中添加视图以添加到步骤1中的ListView

    public View getView(final int pos, View convertView, ViewGroup parent) {
    View selectAppsButton = convertView;

    if(selectAppsButton == null) {
        LayoutInflater inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
        selectAppsButton = inflater.inflate(R.layout.selected_apps_button, parent, false);
    }


    final TileButton appColorButton = (TileButton) selectAppsButton.findViewById(R.id.appColorr);
    final TileButton appNameButton = (TileButton) selectAppsButton.findViewById(R.id.appNamee); //appNameButton is always null

4)在上面的代码' appNameButton'永远是空的。有趣的是appColorButton'来自相同的膨胀布局不是null。

5)知道发生了什么事吗?

我已经建造并重建了一百万次项目。但它没有帮助。

如果需要更多信息,请与我们联系。谢谢。

0 个答案:

没有答案