Android列表视图获取所有项目

时间:2015-07-07 03:22:53

标签: android listview android-studio

在android中,是否可以获取列表视图中的所有项目。让我们说列表视图有多行,屏幕上只能看到2行,其余的可以使用滚动条访问。每行都有一个单选按钮和一个文本视图。有没有办法获得选择了单选按钮的行的所有textview,而不仅仅是屏幕上可见的行。

3 个答案:

答案 0 :(得分:0)

您的回答可能是:

for(int item = 0; item < m_listitem.count(); item ++){
            if(m_listitem[item].isSelected){
                View view = ListView.getChildAt(i);
                TextView textview = view.findViewById(your textView id);
                // do some thing
            }
        }

答案 1 :(得分:0)

您可以使用自定义列表视图来显示带有复选框和列表的列表项目。 TextView的。

答案 2 :(得分:0)

我碰巧有一个类似的要求,我在EditText内有多个ListView,并且屏幕上只能看到其中只有少数EditText。我需要获取所有public class ListViewAdapter extends ArrayAdapter { public ListViewAdapter(Context context, ArrayList<Object> items) { super(context, 0, items); } @Override public View getView(int position, View convertView, ViewGroup parent) { return LayoutInflater.from(getContext()).inflate(R.layout.your_layout_for_list_view_item, parent, false); } } 的值,而不仅仅是屏幕上可见的值。

如果您使用的是默认适配器,那么它的工作方式是回收旧视图以创建新视图。因此,无法保留那些不可见的视图的值。 因此,唯一的解决方法是创建自己的适配器,可能类似于以下内容,它不会回收任何视图,但每次都会膨胀新的。

Lãng Tử Bị Điên

之后,正如上面的回答TextView所提到的那样,您可以检查您的Java代码,是否选中了单选按钮,并根据这些选择了所需的for(int item = 0; item < m_listitem.count(); item ++){ if(m_listitem[item].isSelected){ View view = ListView.getChildAt(i); TextView textview = view.findViewById(your textView id); // do some thing } } s

$("#form1 input").on("keyup change", function(){
    var inputValidate = true;
    $("#form1 input").each(function(index, element){   		
        if ($(element).val() == "")
           inputValidate = false;
    });
    
    if (inputValidate)
        $("#form2").show();
    else
        $("#form2").hide();
});

希望这应该这样做..这确实对我有用!