2

我正在尝试使用 Android Lollipop 的新 VectorDrawable API 来让图像在运行时动态缩放(根据应用程序状态变得越来越小)。据我了解,这种可绘制对象的 group 元素的 scaleX 和 scaleY 属性是导致它被放大或缩小的原因。在查看 API 后,我尝试了以下操作但无济于事:

    Resources.Theme theme=getResources().newTheme();
    theme.applyStyle(R.style.HowAboutThisScale, true);

    ImageView vectorView=(ImageView) findViewById(R.id.vector_view);
    VectorDrawable vectorTest=(VectorDrawable) getResources().getDrawable(R.drawable.my_image);

    vectorTest.mutate();

    vectorTest.applyTheme(theme);
    vectorView.setImageDrawable(vectorTest);

在styles.xml中以此为主题:

<style name="HowAboutThisScale">
    <item name="android:scaleX">10</item>
    <item name="android:scaleY">10</item>
</style>

但是,这根本行不通。我确信我做错了什么,主要是因为我没有太多在运行时修改其他 Drawable 的经验。有没有人知道任何方法来实现这样的事情?

4

0 回答 0