Android 在ListView的每一行中与TextView交互

Android 在ListView的每一行中与TextView交互,android,listview,Android,Listview,我有一个列表视图,每行有两个项目,是两个文本视图 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="wrap_content" android:layout_height="wrap_content"> <LinearLayout android:id="@+id/content"

我有一个列表视图,每行有两个项目,是两个文本视图

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content">
    <LinearLayout
        android:id="@+id/content"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentRight="true"
        android:orientation="vertical">

        <TextView
            android:id="@+id/txtInfo"
            android:layout_width="wrap_content"
            android:layout_height="30sp"
            android:layout_gravity="right"
            android:textSize="12sp"
            android:visibility="gone"
            android:textColor="@android:color/darker_gray" />

        <LinearLayout
            android:id="@+id/contentWithBackground"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="right"
            android:background="@drawable/my_textview_border"
            android:paddingLeft="10dp"
            android:paddingBottom="10dp"
            android:orientation="vertical">

            <TextView
                android:id="@+id/txtMessage"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:textColor="@android:color/black"
                android:padding="10dp"
                android:maxWidth="240dp" />

        </LinearLayout>

    </LinearLayout>
</RelativeLayout>

现在我想在我用
onItemClick(AdapterView父项、视图视图、int位置、长id)
方法单击的行上显示隐藏的TextView,但是如何为每个TextView设置详细id呢。我的意思是,文本视图只在我触摸的行中可见,而不是其他行中的所有文本视图

  • 通过
    implements
  • 使用yourList.setOnItemClickListener(这个)
    onCreate()中
  • 通过以下方式覆盖
    onItemClick
  • 编辑

    要更改textview的所有数据,我将采用以下方式: yourArrayDater.setupmydata(); yourArrayDater.notifyDataSetChanged()

    之后,arrayadapter将使用
    getView
    重新绘制。 所以,再次使用

     public View getView(int position, View convertView, ViewGroup list) {
        View element;
                        if (convertView == null) {
                            element = View.inflate(ctx, R.layout.yourlayout, null);
                        } else {
                            element = convertView;
                        }
    
    TextView tv = (TextView) element.findViewById(R.id.txtMessage);
        ///SETUP YOUR tv for each row
        return element;
        }
    

    已解决:D谢谢。现在我想更改所有行中的文本视图。那我怎么才能得到文本视图呢?我使用了parent.findviewbyd(),但不是work。不,不是数据。我指的是视图:D实际上,我希望在单击另一个视图时,最后一个tvInfo文本视图消失
     public View getView(int position, View convertView, ViewGroup list) {
    View element;
                    if (convertView == null) {
                        element = View.inflate(ctx, R.layout.yourlayout, null);
                    } else {
                        element = convertView;
                    }
    ///setup your listview element
    return element;
    }
    
     public View getView(int position, View convertView, ViewGroup list) {
        View element;
                        if (convertView == null) {
                            element = View.inflate(ctx, R.layout.yourlayout, null);
                        } else {
                            element = convertView;
                        }
    
    TextView tv = (TextView) element.findViewById(R.id.txtMessage);
        ///SETUP YOUR tv for each row
        return element;
        }