RatingBar在缩放时更改大小

时间:2017-11-08 16:31:44

标签: android xml android-layout

您好我正在使用RattingBar,我遇到了问题。我需要缩放它以减小星形大小。问题是,当我缩放它时,星形大小是平静的,但开始的内容是相同的。你可以在图片中看到它:

Without scale

With scale

如何减少内容大小和星号?

这是我的代码:

<android.support.v7.widget.CardView 
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:card_view="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    card_view:cardCornerRadius="4dp"
    card_view:cardElevation="4dp"
    card_view:cardUseCompatPadding="true"
    android:id="@+id/card_comment">



<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="horizontal"
    android:minHeight="120dp">

    <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="match_parent"
        android:background="#80E6E6E6">

        <LinearLayout
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:orientation="vertical">

            <TextView
                android:id="@+id/tv_date"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginTop="15dp"
                android:textStyle="bold"
                android:layout_gravity="center"
                android:textAppearance="?android:attr/textAppearanceSmall" />

            <RatingBar
                android:id="@+id/ratingBar"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginStart="3dp"
                android:elevation="1dp"
                android:scaleX="0.5"
                android:scaleY="0.5"
                android:gravity="start"
                style="@style/Widget.AppCompat.RatingBar.Indicator"
                android:numStars="5"
                android:rating="5.0"
                android:stepSize="0.0" />

        </LinearLayout>
    </LinearLayout>
    <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="vertical">

        <TextView
            android:id="@+id/tv_comment"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="comentario"
            android:textAppearance="?android:attr/textAppearanceMedium" />
    </LinearLayout>


</LinearLayout>

谢谢!!

编辑:当我像这样更改linearlayout(垂直)时:

<LinearLayout
            android:layout_width="130dp"
            android:layout_height="wrap_content"
            android:orientation="vertical">

我得到了这个明星:

enter image description here

我怎么能解决它?

谢谢

1 个答案:

答案 0 :(得分:0)

以XML更改:

<RatingBar
android:id="@+id/ratingbar"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:stepSize="0.5"
android:scaleX="0.5"
android:scaleY="0.5"
android:theme="@style/RatingBar" />  

风格

<style name="RatingBar" parent="Theme.AppCompat">
<item name="colorControlNormal">@color/gray</item>
<item name="colorControlActivated">@color/red</item>
</style>