【问题标题】:How do I get textview value from a listview?如何从列表视图中获取文本视图值?
【发布时间】:2023-03-07 22:05:01
【问题描述】:

我有一个 15 项长列表(带有自定义视图),我想获得我想要的列表项的 textview 值。

【问题讨论】:

  • 如果它们只是普通的TextViews - 即不可编辑 - 你不会已经知道文本值吗?
  • 它们与自定义视图中的其他变量不同,它们是输入数字的平均值
  • 现在我在列表视图中有一个按钮,当我按下它时,我想根据我选择的位置获取一个文本值

标签: android listview android-custom-view


【解决方案1】:

你的 onItemClick 回调会像这样

@Override
    public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
    }

在这里,您有View view,您只需使用您的布局投射此视图并获取您的 TextView 。这是一个例子:

if (view != null) {
        TextView txtView = view.findViewById(R.id.mytextview);
        String value=txtView.getText().toString();
    }

编辑:

public View getViewByPosition(int pos, ListView listView) {
    final int firstListItemPosition = listView.getFirstVisiblePosition();
    final int lastListItemPosition = firstListItemPosition + listView.getChildCount() - 1;

    if (pos < firstListItemPosition || pos > lastListItemPosition ) {
        return listView.getAdapter().getView(pos, null, listView);
    } else {
        final int childIndex = pos - firstListItemPosition;
        return listView.getChildAt(childIndex);
    }
}

只需使用这种方式在您的按钮 onClick() 方法上调用此方法

getViewByPosition(2,YOUR_LIST_VIEW); 

此方法将返回您的View 对象的ListView 特定位置。现在您可以使用以前的方式进行投射。

希望对你有帮助:)

【讨论】:

  • 是的,但我不需要 onITemClick 我有一个按钮,例如,该按钮会给我位置 2 的列表项中的文本值
【解决方案2】:

此代码可以添加到您的 ListView 以在长按时执行特定操作:

list.setOnItemLongClickListener(new OnItemLongClickListener() {

               @Override
                public boolean onItemLongClick(AdapterView<?> parent, View list,int pos, long id) {
                        // TODO Auto-generated method stub

                      CustomView view = (CustomView) list ;
                     //put in your customview some methods to get and set each item within it for example getTextViewText to get the text from the TextView item
                    }


                });

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-06-25
    • 1970-01-01
    • 1970-01-01
    • 2013-02-22
    相关资源
    最近更新 更多