如何在修改后的列表视图中设置特定行

时间:2015-12-31 11:46:02

标签: android xml listview

我有一个问题是如何为修改后的列表视图显示不同的xml布局。

我的列表视图充当评论部分。

我只想为该特定评论的所有者显示编辑和删除按钮,如果他/她不是其所有者,则根本不显示任何内容。

这是我的示例代码 顺便说一句我正在使用json

import java.io.*;
import java.util.*;
import java.text.*;
import java.math.*;
import java.util.regex.*;

public class Solution {

public static void main(String[] args) {
    /* Enter your code here. Read input from STDIN. Print output to STDOUT. Your class should be named Solution. */
    Scanner sc = new Scanner(System.in);
    long no = sc.nextLong();

    if(no > 1000000 || no < 1)
                 System.exit(0);


    long arr[] = new long [(int)no];


    for(int i=0;i<(int)no;i++) {

        arr[i] = sc.nextLong();
        System.out.println(arr[(int)i]);

    }
}
}

1 个答案:

答案 0 :(得分:0)

希望这对你有所帮助。

public class TestListViewAdapter extends ArrayAdapter<Object> {

static final int TYPE_HEADER = 0;
static final int TYPE_CELL = 1;

public TestListViewAdapter(Context context, List<Object> objects) {
    super(context, 0, objects);
}

@Override
public int getItemViewType(int position) {
    switch (position) {
        case 0:
            return TYPE_HEADER;
        default:
            return TYPE_CELL;
    }
}

@Override
public int getViewTypeCount() {
    return 2;
}

@Override
public View getView(int position, View convertView, ViewGroup parent) {
    if(convertView == null) {
        switch (getItemViewType(position)) {
            case TYPE_HEADER: {
                convertView = LayoutInflater.from(parent.getContext())
                        .inflate(R.layout.tools_list_item_card_big, parent, false);
            }
            break;
            case TYPE_CELL: {
                convertView = LayoutInflater.from(parent.getContext())
                        .inflate(R.layout.tools_list_item_card_small, parent, false);
            }
            break;
        }
    }
    return convertView;
}

}

  适配器开关案例的getview方法中的

用于在listview行上放大不同的视图。 getItemViewType()返回我想要使用的视图,您也可以通过在数组列表自定义模型中添加属性来检查这一点。