如何使用 SimpleAdapter 在 ListView 中添加不同类型的项目?

发布于 2024-09-18 11:50:10 字数 835 浏览 4 评论 0原文

我想将不同类型的项目(例如简单的文本视图)添加到 ListView 中的最后一个位置。

我扩展了 SimpleAdapter 并重写了一些方法:

@Override
public int getCount() {
    if (super.getCount() == 0) {
        return 0;
    } else {
        return super.getCount() + 1;
    }
}

@Override
public Object getItem(int position) {
    if (position == getCount() - 1) {
        return null;
    } else {
        return super.getItem(position);
    }
}

@Override
public View getView(int position, View convertView, ViewGroup parent) {
    View v;
    if (position == getCount() - 1) {
        if (convertView == null) {
            v = new TextView(mContext);
        } else {
            v = convertView;
        }

        return v;
    } else {
        return super.getView(position, convertView, parent);
    }
}

但它不起作用。有什么问题或者如何添加? 谢谢。

I want to add a different type of item (like a simple textview) to the last position in my ListView.

I extends the SimpleAdapter and override some methods:

@Override
public int getCount() {
    if (super.getCount() == 0) {
        return 0;
    } else {
        return super.getCount() + 1;
    }
}

@Override
public Object getItem(int position) {
    if (position == getCount() - 1) {
        return null;
    } else {
        return super.getItem(position);
    }
}

@Override
public View getView(int position, View convertView, ViewGroup parent) {
    View v;
    if (position == getCount() - 1) {
        if (convertView == null) {
            v = new TextView(mContext);
        } else {
            v = convertView;
        }

        return v;
    } else {
        return super.getView(position, convertView, parent);
    }
}

But it did not work. What is the problem or how to add one?
Thanks.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

¢好甜 2024-09-25 11:50:10

尝试使用页脚,在您的活动中尝试

getListView().addFooter(View.inflate(R.layout.my_footer, null));

在将适配器添加到列表视图之前必须执行此操作。

Try using a footer instead, in your activity try

getListView().addFooter(View.inflate(R.layout.my_footer, null));

You have to do this before you add the adapter to the listview.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文