1

如果我有这样的布局,在我使用任何这些后如何获取TextView前面的 id ?bringToFrontTextView

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">

<FrameLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content">

    <TextView
        android:id="@+id/textView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="New Text 1" />

    <TextView
        android:id="@+id/textView2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="New Text 2" />

    <TextView
        android:id="@+id/textView3"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="New Text 3" />
</FrameLayout>

4

1 回答 1

2

根据执行情况FrameLayout bringChildToFront

public void bringChildToFront(View child) {
    int index = indexOfChild(child);
    if (index >= 0) {
        removeFromArray(index);
        addInArray(child, mChildrenCount);
        child.mParent = this;
        requestLayout();
        invalidate();
    }
}

您应该能够检索您正在寻找的视图

frameLayoutInstance.getChildAt(frameLayoutInstance.getChildCount() - 1).getId()
于 2015-11-18T15:34:23.143 回答