我创建了布局按钮,我想通过包含它来将其用于其他地方,并且我想在每个布局中更改其文本,有没有办法?
我的按钮(row_addbutton):
<Button
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/button_banklist_addtoken"
android:layout_width="200dp"
android:layout_height="45dp"
android:background="@drawable/backgroundbutton_withradiusandcolorprimarylight"
android:text="@string/banklist_addtoken"
style="@style/TextAppearanceButton"
android:drawableEnd="@drawable/addtokenicon"
android:layoutDirection="ltr"
android:drawableRight="@drawable/addtokenicon"
android:paddingStart="60dp"
android:paddingEnd="60dp"
android:layout_marginTop="25dp">
</Button>
在这里包括它:
<include
layout="@layout/row_addtoken"
android:layout_width="200dp"
android:layout_height="45dp"
android:layout_below="@+id/linearlayout_banklist_basecontent"
android:layout_centerHorizontal="true"
android:layout_marginStart="70dp"
android:layout_marginTop="-25dp"
android:layout_marginEnd="70dp"
//is there any way to change text button here??
/>
答案 0 :(得分:3)
一种更明智的实现目标的方法是在/res/values/styles.xml
中声明此类按钮的样式。因此,您只需要从下拉列表中选择样式,然后像平常一样更改按钮文本即可。
答案 1 :(得分:0)
您可以访问包含布局的所有视图。
您可以在.java类中这样做。 假设您已经将布局包含在activity_main.xml中,然后转到相应的java文件,并且可以执行以下代码:
Button button_banklist_addtoken = findViewById(R.id. button_banklist_addtoken);
button_banklist_addtoken.setText("Here is your text")
我希望它将对您有帮助