Как установить текст для включения кнопки в макет - PullRequest
0 голосов
/ 07 января 2019

Я создаю кнопку макета, и я хочу использовать ее в другом месте, включив ее, и я хочу изменить ее текст в макете, есть ли способ ??

моя кнопка (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??
            />

Ответы [ 2 ]

0 голосов
/ 08 января 2019

Вы можете получить доступ ко всем представлениям включенного макета.

Вы можете сделать это в классе .java следующим образом. Давайте предположим, что вы включили свой макет в activity_main.xml, затем перейдите к соответствующему Java-файлу, и в этом вы можете сделать код, как показано ниже:

 Button button_banklist_addtoken = findViewById(R.id. button_banklist_addtoken);
 button_banklist_addtoken.setText("Here is your text")

Я надеюсь, что это поможет вам

0 голосов
/ 07 января 2019

Более разумный способ достичь желаемого - объявить стиль для таких кнопок в /res/values/styles.xml. Тогда вам просто нужно выбрать свой стиль из выпадающего списка и изменить текст кнопки, как обычно.

...