0

我有这样一行项目的布局LIstView

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="match_parent"
    android:layout_gravity="right"
    android:descendantFocusability="afterDescendants"
    android:gravity="right"
    android:orientation="vertical" >

    <TextView
        android:id="@+id/label"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_gravity="right"
        android:gravity="right"
        android:textSize="40sp" 
        android:focusableInTouchMode="false"
        android:clickable="false"
        android:focusable="false"  />

    <RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:background="@drawable/btn_background" >

        <Button
            android:id="@+id/share_btn"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentRight="true"
            android:layout_alignParentTop="true"
            android:layout_marginTop="2dp"
            android:background="@drawable/delete_btn"
            android:drawableRight="@drawable/delete"
            android:paddingBottom="3dp"
            android:paddingTop="2dp"
            android:text="share"
            android:onClick="myClickHandler" />

    </RelativeLayout>

</LinearLayout>

我想获取TextView用户单击删除按钮时的文本(在 myClickHandler() 方法中),

使用此代码:

RelativeLayout vwParentRow = (RelativeLayout)v.getParent();

我得到Button(RelativeLayout)的父级,但不知道如何TextView在父级的父级中获取该文本Button

我怎么能做到这一点?

谢谢

4

3 回答 3

2

我为您找到了解决方案:

在您的myClickHandler 方法中,您可以使用以下代码来确定 textview 的内容是什么:

public void myClickHandler(View v) {
    ViewParent relativeLayout = v.getParent();
    ViewParent linearLayout = relativeLayout.getParent();

    TextView textView = (TextView) ((View) linearLayout).findViewById(R.id.label);
    String text = textView.getText().toString();
    Log.i("textview content", text);
}
于 2013-08-13T10:05:17.967 回答
1

我想在用户单击删除按钮时获取 TextView 的文本(在 myClickHandler() 方法中),

要获取 textView 的文本,请使用:

String text = ((TextView)findViewById(R.id.label)).getText().toString();
于 2013-08-12T14:58:36.723 回答
1

在你的按钮onClick尝试以下怎么样:

TextView myTextView = (TextView) getView().findViewById(R.id.label);
String text = myTextView.getText().toString();
于 2013-08-12T14:58:41.333 回答