首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ShapeDrawable和TableLayout

ShapeDrawable和TableLayout
EN

Stack Overflow用户
提问于 2011-05-16 07:01:12
回答 1查看 302关注 0票数 0

我正在尝试将一个ShapeDrawable对象放入一个TableLayout单元格中。按照文档here的建议,我创建了一个自定义视图mCustomView,然后通过执行以下操作将视图添加到TableLayout中

代码语言:javascript
复制
mRow.addView(mCustomView)
mTableLayout.addView(mRow)

一切运行正常,没有错误,但形状根本不显示。

创建可绘制的代码是

代码语言:javascript
复制
icon = new ShapeDrawable(new ArcShape(0, 360));
icon.setBounds(0, 0, 20, 20);
icon.getPaint().setColor(parseColor);
EN

回答 1

Stack Overflow用户

发布于 2011-05-16 19:46:22

经过进一步的挖掘和研究,最好的solution是将ShapeDrawable对象传递给ImageView构造函数,然后将该视图添加到表行中,如下所示

代码语言:javascript
复制
ShapeDrawable icon = new ShapeDrawable(new ArcShape(0, 360));
icon.getPaint().setColor(parseColor);
icon.setIntrinsicHeight(30);
icon.setIntrinsicWidth(30);
ImageView iv = new ImageView(this);
iv.setImageDrawable(icon);  
mRow.addView(iv);
mTableLayout.addView(mRow)

此解决方案还具有摆脱自定义View类的优势。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6011827

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档