2

我正在制作一个显示新闻的应用程序。如果我不想显示“news_item1”,如何将其从列表中删除?有没有办法为“news_item1”设置不可见?

public View getView(int position, View convertView, ViewGroup parent) {
// Log.e("www", "getView " + position);
v = convertView;
if (v == null) {
    int res = 0;
    if (mItems.get(position).iType == 0)
        res = R.layout.news_item;
        else
            res = R.layout.news_item1;
        v = inflater.inflate(res, parent, false);
    }
4

6 回答 6

1

尝试这个

if (v == null) {
    int res = 0;
    if (mItems.get(position).iType == 0){
        res = R.layout.news_item;
        v = inflater.inflate(res, parent, false);
    }
}
于 2012-05-17T05:43:19.783 回答
0

你可以访问这个链接

http://developer.android.com/reference/android/view/View.html#attr_android:visibility

在那个 goto android:visibility 窗格中检查一下

android:visibility = “隐形”</p>

于 2012-05-17T08:09:09.430 回答
0

只需将其添加到 XML 文件中。

android:visibility = "invisible"

在 Java 代码中,使用textView.setVisibility(View.VISIBLE);.

于 2012-05-17T08:12:33.563 回答
0

使用列表适配器获取所需的子视图/列表项并将其从适配中删除,现在再次填充列表,即

listview.setAdapter(adapter);
于 2012-05-17T05:25:18.903 回答
0

不过,它不是很清楚的问题,我知道您需要显示从索引 1 到数组大小的项目。

为此,请执行以下操作:

在 Adapter 中重写 getCount 方法并返回 size-1

在 Adapter 中重写 getItem 方法并返回 arr[position+1]

于 2012-05-17T05:03:47.247 回答
0

当您获得列表视图的位置 1 时,您应该使用视图的 setVisibility 属性

v = inflater.inflate(res, parent, false);
v.setVisibility(View.GONE);
于 2012-05-17T05:05:12.897 回答