从顶部和底部分别更改图像视图宽度

问题描述 投票:1回答:2

我正在尝试分别从顶部和底部更改imageview的宽度。我要从左上右到100dp,从左下右到50dp。请参阅附件中的图像以获取想法:https://ibb.co/W339gZL

我曾尝试在网上对解决方案进行罚款,但还没有找到任何东西。我尝试使用Android Scale库,但没有达到要求的结果。

ScaleAnimation fade_in =  new ScaleAnimation(0f, 1f, 0f, 1f, Animation.RELATIVE_TO_SELF, 0.5f, Animation.RELATIVE_TO_SELF, 0.5f);
        fade_in.setDuration(1000);     // animation duration in milliseconds
        fade_in.setFillAfter(true);    // If fillAfter is true, the transformation that this animation performed will persist when it is finished.
        IV.startAnimation(fade_in);

请指导哪个库能够执行此操作或如何实现它?

java android imageview
2个回答
0
投票

您可以使用ImageView创建自定义形状this library


0
投票

您必须为背景图像视图创建XML文件并调整斜方形状。您不必使用任何库。

注意:由于您的原因,我将颜色用于纯色等(将其复制并粘贴到您的XML文件中并观看)。

<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
<item>
    <shape android:shape="rectangle">
        <padding android:top="35dp"/>
        <size android:width="200dp" android:height="40dp" />
        <solid android:color="#13a89e" />
    </shape>
</item>

<item>
    <shape android:shape="line">
        <size android:width="100dp"/>
        <stroke android:width="4dp" android:color="#123456" />
    </shape>
</item>

<item
    android:right="-200dp"
    android:left="200dp"
    android:top="-200dp"
    android:bottom="-200dp">
    <rotate android:fromDegrees="45">
        <shape android:shape="rectangle">
           <padding android:top="-35dp"/>
           <solid android:color="#ffffff" />
        </shape>
    </rotate>
</item>
<item
    android:right="200dp"
    android:left="-200dp"
    android:top="-200dp"
    android:bottom="-200dp">
    <rotate android:fromDegrees="-45">
        <shape android:shape="rectangle">
            <padding android:top="-35dp"/>
            <solid android:color="#ffffff" />
        </shape>
    </rotate>
</item>
</layer-list>
© www.soinside.com 2019 - 2024. All rights reserved.