Android以编程方式设置自定义视图的高度和宽度
我创build了一个名为Graphview
的自定义视图。 这里是GraphView类的结构。
public class GraphView extends View { public GraphView(Context context, float[] values, String title, String[] horlabels, String[] verlabels, boolean type) { super(context); ........ } .................. ................. }
我使用addview()
在addview()
添加了视图。 它工作正常。 现在我想为GraphView
设置高度和宽度。 怎么做?
简单的方法是像这样以编程方式设置大小:
graphView.setLayoutParams(new LayoutParams(width, height));
这很好,如果你知道视图的确切大小。 但是,如果您需要更灵活的方法,则可以根据可用空间和布局约束( wrap_content
, match_parent
或固定大小),重写onMeasure()
方法以更精确地度量视图。
您可以通过查看SDK 文档中的android文档和LabelView
示例来find如何覆盖onMeasure()
的示例。
你可以像这样设置高度和宽度:
myGraphView.setLayoutParams(new LayoutParams(width, height));
你可以像这样在相对布局中设置视图的高度和宽度
ViewGroup.LayoutParams params = view.getLayoutParams(); params.height = 130; view.setLayoutParams(params);
spin12.setLayoutParams(new LinearLayout.LayoutParams(200, 120));
spin12
是你的微调器, spin12
是你的微调器的width
和height
。