Как ссылаться на android: значения силы тяжести в файле ресурсов?

У меня есть макет с TextView и я хочу, чтобы значение атрибута android:gravity было вытащено из другого файла ресурсов, android:gravity="@???/item_align" , где item_align – это имя ресурса в другом XML-файле. Типичные значения, используемые в макете, в center или bottom или bottom|center_horizontal , не работают. Какой тип идет в @??? , Integer works, если я заменю строки фактическим целочисленным значением («центр» заменен на 0x011). Но это нехорошее решение.

Итак, вопрос (ы): Как я могу ссылаться на значение в файле макета и на что выглядит элемент в файле ресурсов?

 <TextView android:id="@+id/item_text" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentTop="true" android:layout_alignParentBottom="true" android:layout_alignParentLeft="true" android:layout_alignParentRight="true" android:layout_margin="1dp" android:layout_centerHorizontal="true" android:gravity="@???/item_align" android:text="65" android:textSize="20sp" android:typeface="sans" android:textStyle="bold" android:textColor="#000000" /> 1 <TextView android:id="@+id/item_text" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentTop="true" android:layout_alignParentBottom="true" android:layout_alignParentLeft="true" android:layout_alignParentRight="true" android:layout_margin="1dp" android:layout_centerHorizontal="true" android:gravity="@???/item_align" android:text="65" android:textSize="20sp" android:typeface="sans" android:textStyle="bold" android:textColor="#000000" /> 

Solutions Collecting From Web of "Как ссылаться на android: значения силы тяжести в файле ресурсов?"

Концепция:

  android:gravity="@integer/integer_name" 

integers.xml

 <?xml version="1.0" encoding="utf-8"?> <resources> <integer name="integer_name" >1</integer> </resources> 

Значения силы тяжести – это целые константы, вам нужно найти их и определить в вашем integers.xml.

Пример реализации:

Public static final int CENTER … Постоянное значение: 17 (0x00000011)

В документах … Затем вы добавляете в integers.xml в res / values ​​/:

  <integer name="center" >17</integer> 

И в вашем xml выполните:

 android:gravity="@integer/center" 

Ну вот.

 <integer name="gravity_bottom">80</integer> <integer name="gravity_center">17</integer> <integer name="gravity_center_horizontal">1</integer> <integer name="gravity_center_vertical">16</integer> <integer name="gravity_end">8388613</integer> <integer name="gravity_left">3</integer> <integer name="gravity_no_gravity">0</integer> <integer name="gravity_right">5</integer> <integer name="gravity_start">8388611</integer> <integer name="gravity_top">48</integer>