【问题标题】:How to resize image inside circle in android studio?如何在android studio中调整圆圈内的图像大小?
【发布时间】:2021-06-11 06:35:02
【问题描述】:

我正在做一个 android 项目,我正在尝试在一个圆圈内创建一个像星星一样的图像

喜欢这个

我试过了,但我无法调整星星的大小。

每次我尝试调整 star android studio 都会调整我的整个图像的大小

这是我的圆形 xml

<?xml version="1.0" encoding="utf-8"?>
<shape
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="oval">

    <solid
        android:color="@color/darkPurple"/>

    <size
        android:width="50dp"
        android:height="50dp"/>
</shape>

这是我的明星 xml

<vector android:autoMirrored="true" android:height="1dp"
    android:tint="#FFB404" android:viewportHeight="24"
    android:viewportWidth="24" android:width="1dp" xmlns:android="http://schemas.android.com/apk/res/android">
    <path android:fillColor="@android:color/white" android:pathData="M12,17.27L18.18,21l-1.64,-7.03L22,9.24l-7.19,-0.61L12,2 9.19,8.63 2,9.24l5.46,4.73L5.82,21z"/>
</vector>

这是我的布局

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="horizontal"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <LinearLayout
        android:orientation="vertical"
        android:layout_weight="1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"

        >
        <ImageView
            android:layout_gravity="center"
            android:background="@drawable/circle"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@drawable/ic_baseline_star_24"
            >

        </ImageView>
        <TextView
            android:layout_gravity="center"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Markets"
            android:textColor="@color/white"
            >

        </TextView>

    </LinearLayout>

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

        <ImageView
            android:layout_gravity="center"
            android:background="@drawable/circle"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@drawable/ic_baseline_star_24"
            >

        </ImageView>
        <TextView
            android:layout_gravity="center"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Markets"
            android:textColor="@color/white"
            >
        </TextView>




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

        <ImageView
            android:layout_gravity="center"
            android:background="@drawable/circle"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@drawable/ic_baseline_star_24"
            >

        </ImageView>
        <TextView
            android:layout_gravity="center"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Markets"
            android:textColor="@color/white"
            >
        </TextView>


    </LinearLayout>


    

</LinearLayout>

请告诉我该怎么做

【问题讨论】:

标签: java xml android-studio


【解决方案1】:

我遇到了类似的问题,我使用以下方法修复了它。

您可以在 ImageView

中添加 padding
    <ImageView
        android:layout_gravity="center"
        android:background="@drawable/circle"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@drawable/ic_baseline_star_24"
        android:padding="16dp"> <!-- Here is the change -->
        

或在 ImageView 中设置 scaleType 属性以适应您的需要。

    <ImageView
        android:layout_gravity="center"
        android:background="@drawable/circle"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@drawable/ic_baseline_star_24"
        android:scaleType="centerInside"> <!-- Here is the change -->
        

【讨论】:

    猜你喜欢
    • 2014-07-08
    • 1970-01-01
    • 1970-01-01
    • 2012-05-11
    • 2023-03-04
    • 2015-08-10
    • 1970-01-01
    • 2014-04-21
    • 2017-12-20
    相关资源
    最近更新 更多