2016-12-05 6 views
1

Я пытаюсь подстроить некоторые TextViews, чтобы иметь заданный размер текста. Изменение размера в стиле ничего не делает для TextView, а его изменение в макете XML имеет правильный эффект. Что мне не хватает?Размер текста не изменяется в TextView с использованием стиля в Android Studio

Стиль:

<style name="SliderTextTheme"> 
    <item name="android:layout_width">0dp</item> 
    <item name="android:layout_weight">1</item> 
    <item name="android:layout_gravity">center</item> 
    <item name="android:layout_height">wrap_content</item> 
    <item name="android:textSize">25sp</item> 
    <item name="android:textAlignment">center</item> 
</style> 

Layout XML для TextView:

   <?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:orientation="vertical" android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:background="@android:color/background_dark" 
    xmlns:tools="http://schemas.android.com/tools"> 

    <FrameLayout 
     android:id="@+id/image_frame" 
     android:padding="16dp" 
     android:layout_width="match_parent" 
     android:layout_height="0dp" 
     android:layout_gravity="top" 
     android:layout_weight="5"> 
     <ImageView 
      android:id="@+id/color_wheel" 
      android:src="@drawable/color_wheel_730" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content"/> 
    </FrameLayout> 

    <LinearLayout 
     android:id="@+id/slider_layout" 
     android:orientation="vertical" 
     android:layout_width="match_parent" 
     android:layout_height="0dp" 
     android:layout_gravity="center" 
     android:layout_weight="3"> 

     <LinearLayout 
      android:layout_width="match_parent" 
      android:layout_height="0dp" 
      android:layout_weight="1" 
      android:orientation="horizontal"> 

      <TextView 
       style="@style/SliderTextTheme" 
       android:textColor="@color/RGBW_red" 
       android:text="@string/color_red"/> 
      <SeekBar 
       style="@style/ColorSeekBar" 
       android:id="@+id/red_seekbar" 
       android:progressTint="@color/RGBW_red" 
       android:thumbTint="@color/RGBW_red" /> 
      <TextView 
       android:id="@+id/red_value" 
       style="@style/SliderTextTheme" 
       android:textColor="@color/RGBW_red" 
       tools:text="100" /> 
     </LinearLayout> 

     <LinearLayout 
      android:layout_width="match_parent" 
      android:layout_height="0dp" 
      android:layout_weight="1" 
      android:orientation="horizontal"> 

      <TextView 
       style="@style/SliderTextTheme" 
       android:textColor="@color/RGBW_green" 
       android:text="@string/color_green"/> 
      <SeekBar 
       style="@style/ColorSeekBar" 
       android:progressTint="@color/RGBW_green" 
       android:thumbTint="@color/RGBW_green" /> 
      <TextView 
       android:id="@+id/green_value" 
       style="@style/SliderTextTheme" 
       android:textColor="@color/RGBW_green" 
       tools:text="100" /> 
     </LinearLayout> 
     <LinearLayout 
      android:layout_width="match_parent" 
      android:layout_height="0dp" 
      android:layout_weight="1" 
      android:orientation="horizontal"> 

      <TextView 
       style="@style/SliderTextTheme" 
       android:textColor="@color/RGBW_blue" 
       android:text="@string/color_blue"/> 
      <SeekBar 
       style="@style/ColorSeekBar" 
       android:progressTint="@color/RGBW_blue" 
       android:thumbTint="@color/RGBW_blue" /> 
      <TextView 
       android:id="@+id/blue_value" 
       style="@style/SliderTextTheme" 
       android:textColor="@color/RGBW_blue" 
       tools:text="100" /> 
     </LinearLayout> 

     <LinearLayout 
      android:layout_width="match_parent" 
      android:layout_height="0dp" 
      android:layout_weight="1" 
      android:orientation="horizontal"> 

      <TextView 
       style="@style/SliderTextTheme" 
       android:textColor="@color/RGBW_white" 
       android:text="@string/color_white"/> 
      <SeekBar 
       style="@style/ColorSeekBar" 
       android:progressTint="@color/RGBW_white" 
       android:thumbTint="@color/RGBW_white" /> 
      <TextView 
       android:id="@+id/white_value" 
       style="@style/SliderTextTheme" 
       android:textColor="@color/RGBW_white" 
       tools:text="100" /> 
     </LinearLayout> 

    </LinearLayout> 

    <RelativeLayout 
     android:id="@+id/button_layout" 
     android:orientation="horizontal" 
     android:layout_width="match_parent" 
     android:layout_height="0dp" 
     android:layout_weight="1" 
     android:layout_gravity="bottom"> 

     <Button 
      android:id="@+id/test_button_1" 
      android:layout_alignParentLeft="true" 
      android:layout_margin="10dp" 
      android:layout_width="wrap_content" 
      android:padding="10dp" 
      android:layout_height="wrap_content" 
      android:background="#FFFFFF" 
      android:text="Send Colors"/> 
    </RelativeLayout> 

</LinearLayout> 

Спасибо заранее. Том

+0

Привет Том. Показывает ли текст вообще, когда вы используете ширину как 0dp? Не могли бы вы разместить полный xml-макет? –

+0

Являются ли другие свойства в стиле, работающем для текстового просмотра? –

+0

См. Полный XML. Кажется, что некоторые атрибуты вносят изменения, а некоторые - нет. Атрибуты компоновки работают, но размер текста и стиль этого не делают. Я не могу изменить стиль текста (полужирный, и т. Д.) Или размер по стилю. – tommyvdp

ответ

0

Я был в состоянии получить свой стиль работы и корректировать размер текста с помощью путем изменения

<item name="android:layout_width">0dp</item> 

в

<item name="android:layout_width">wrap_content</item> 

Если требуется ширина 0dp для работы с атрибутом веса , убедитесь, что TextView, с которым вы работаете, определенно находится внутри LinearLayout.

+0

Это не имеет значения для меня, я добавил полный XML для этой деятельности, см. Выше. – tommyvdp