微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

android – 如何根据appwidget中textview中的小部件大小调整文本大小?

我已经对 Android编程了一段时间,但这真让我感到困惑.

所以我有一个简单的appwidget和textview.我只是希望文本视图中的文本字体大小在用户调整小部件大小时向上/向下扩展,以便在调整应用程序大小时使文本更大.我尝试了几种解决方案但一切都失败了:

>简单地使用“sp”(缩放像素)单位作为字体大小 – 当窗口小部件大小改变时,这不会缩放文本(我也没想到它!).
>使用我自己的onView和覆盖onSizeChanged方法扩展TextView.但是你不能在一个小部件中拥有基本UI类的后代(文档也说明了这一点).

由于没有方法可以获得当前的appWidget大小,我只是被困在这里.

是的,我知道一个解决方案是创建不同版本的小部件,如1×4和2×4等,但肯定还有另一种方法吗?

欢迎任何想法?

解决方法

无法根据父级大小自动缩放TextView的文本.解决方法是覆盖TextView的onDraw方法并手动实现缩放.

至于appwidgets:您无法检索可调整大小的appwidget的当前大小,因为它们旨在与ListView和GridView容器一起使用.这些容器将自动管理内容的缩放和间距,并且如果内容无法适应appwidget的当前大小,则可以自行滚动.

如果您没有使用ListView或GridView,在我看来,“扩展”appwidget组件的最佳方法是您已经提到的方法:使用不同的不可调整大小的appwidgets.

原文地址:https://www.jb51.cc/android/309171.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐