java - 我怎样才能从另一个 View 中获取 View

标签 java android

这是我的xml文件

             <FrameLayout 
                 android:layout_alignParentRight="true"
                 android:layout_alignParentBottom="true"
                 android:layout_width="wrap_content"
                 android:layout_height="wrap_content"
                 >
                 <Button
                    android:id="@+id/button1"
                    style="?android:attr/buttonStyleSmall"
                    android:layout_width="50dp"
                    android:layout_height="30dp"
                    android:text="@string/productButton_download"
                    android:onClick="testGetView"
                     />

                 <ProgressBar
                     style="?android:attr/progressBarStyleHorizontal"
                     android:layout_width="50dp"
                     android:layout_height="30dp"
                     android:visibility="invisible"
                      />
             </FrameLayout>

我想使用函数 testGetView 获取 ProgressBar 实例,而不是使用资源 ID 获取它

public void testGetView(View button) {
    // what can I do use this view to get the progressbar below it

}

最佳答案

你必须为你的 ProgressBar 设置一个 id,然后从你的按钮,使用 getParent() 获取它的父 View ,将它转换到 ViewGroup 然后用你的 ProgressBar

的 id 调用 findViewById(int id)

关于java - 我怎样才能从另一个 View 中获取 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17829601/

相关文章:

android - 如何从 Android FCM 中的推送通知打开特定 Activity ?

带复选框的 Android Listview 如何访问复选框

java - 从java代码运行时如何将参数传递给ant脚本?

java - 使用 switch/if 语句将字母等级转换为数字等级?

java - Oracle:Java:强制 “select … for update” 在找到匹配项之前不返回

java - 如何捕获 parseInt 抛出的 NumberFormatException

android - 无法从 Ubuntu 中的终端运行 adb

android - 无法转换为颜色 : type=0x2 error when inflating layout in fragment but only on Samsung Galaxy and Note 4

java - Hibernate 配置未列出 XML 中的所有实体

android - 任何人都可以在 android 中使用 9-patch 设置此图像吗