【问题标题】:Getting views of a custom view in android在android中获取自定义视图的视图
【发布时间】:2015-09-14 09:23:06
【问题描述】:

好吧,我有一个带有 OnItemClickListener 的列表视图,列表视图的每个项目都是一个带有两个文本视图的自定义视图,我想在单击项目时获取第一个文本视图的文本,那么我该怎么做呢?当一个项目被点击时,我只能得到被点击的视图,但我怎样才能在这个自定义视图上获得文本视图?

【问题讨论】:

  • 你能检查一下是否有办法在自定义视图中获取项目吗?类似于 items[0] 或返回给定索引的项目的函数
  • 我尝试了下面的第一个答案,它有效我不知道有这么简单的方法! @维克多

标签: android listview onitemclicklistener custom-view


【解决方案1】:

遍历该视图的层次结构:

TextView textView = (TextView) clickedView.findViewById(R.id.first_text_view);

clickedView 由OnItemClickListener 提供给您。

【讨论】:

    【解决方案2】:
    yourListView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
                @Override
                public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
                    textFromFirstView = yourArray.get(position).getTextFromFirst();
                }
            });
    

    例如,getTextFromFirst() 是您的 textview 的吸气剂

    【讨论】:

    • 这对我来说是一个可行的解决方案。只需添加 onItemClickListener 和位置就会告诉你点击了哪个项目。将此设置为 0,您始终可以获得第一项。 GetTextFromThis() 必须在 CustomListView-Item 中实现!
    • 我想我不明白你的解决方案,位置给出了列表视图中项目的位置,但我想在列表视图的项目上获取文本视图。
    猜你喜欢
    • 1970-01-01
    • 2021-02-09
    • 1970-01-01
    • 1970-01-01
    • 2017-09-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多