将视图信息传递给方法

时间:2017-01-18 18:04:27

标签: android android-layout android-view

我有一个简单的小应用程序,只需点击一下按钮即可创建一个新的向导角色。

我的xml文件中有这个。我使用按钮为向导配置文件创建一个新视图(通过AddWizardView方法),我使用android:tag元素发送向导的名称。

但是我还需要在ImageView中发送向导的图片...有没有办法在单击按钮并将其发送到AddWizardView方法时获取此信息?

<ImageView
    android:id="@+id/wizard1_icon"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginRight="4dp"
    android:src="@drawable/wizard1_one" />

 <TextView android:id="@+id/wizard1"
    android:layout_weight="1"
    android:layout_width="0dp"
    android:layout_height="wrap_content"
    android:text="@string/wizard1_name"
    android:hint="@string/wizard1_name" />

 <Button
    android:id="@+id/btnAddWizard"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="@string/button_Add"
    android:tag="@string/wizard1_name"
    android:onClick="AddWizardView" />

1 个答案:

答案 0 :(得分:1)

您可以通过为strings.xml中的每个标记定义ID来添加多个标记,例如

<item type="id" name="wizard1_name"/>
<item type="id" name="wizard1_image"/>

在java中你可以设置像

这样的标签

btnAddWizard.setTag(R.id.wizard1_name,R.string.wizard1_name); btnAddWizard.setTag(R.id.wizard1_image,R.drawable.wizard1_one);

你可以获得像

这样的标签
Object wizardName = btnAddWizard.getTag(R.id.wizard1_name);
Object wizardImage = btnAddWizard.getTag(R.id.wizard1_image);

你需要根据你的类型

来施放对象