是否有与HTML类等效的XML?

时间:2018-03-20 06:07:20

标签: android xml android-layout

很抱歉,如果这是一个非常明显的问题,但我一直试图在很多地方找到类似的东西,而且我不确定它是否只是不存在或是否存在我用错误的语言来描述我需要的东西。

例如,如果我在活动的不同部分有很多TextView,并且我希望所有这些文本视图在单击时打开相同的活动,那么如何在不指定每个ID的情况下执行此操作如果在Java中声明?在HTML中,我会使用class属性将它们组合在一起,但我无法在XML中找到类似的功能。

感谢您的帮助!

2 个答案:

答案 0 :(得分:1)

如果您的目的是防止代码重复和繁琐的代码重复,那么一种方法是使用ButterKnife。下面的链接可行:

@OnClick({R.id.view_id1, R.id.view_id2, R.id.view_id3})
public void onClick(View view) {
   // TODO: Handle click
}

或者,正如另一个答案所示,您可以在每个视图中具有android:onClick属性,这些视图指向Java代码中的相同方法。

答案 1 :(得分:0)

编写EditText的xml代码,如下所示

<EditText
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:hint="Fourth EditText"
        android:onClick="editTextClick"/>

并在Java文件中编写方法

public void editTextClick(View v) {
        // does something very interesting
        Log.d("MainActivity","EditText pressed");
    }

我希望这会对你有所帮助, 快乐编码