Android 5.0:在运行时以编程方式更改VectorDrawable上的scaleX属性

时间:2015-04-07 17:13:30

标签: android android-5.0-lollipop android-vectordrawable

我正在尝试使用Android Lollipop的新VectorDrawable API,让图像在运行时动态扩展(根据应用程序状态变得越来越小)。据我所知,这种drawable的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>
但是,这根本不起作用。我确信我做错了,主要是因为我没有太多经验在运行时修改其他Drawables。有没有人知道如何实现这样的事情?

0 个答案:

没有答案