我创建了一个名为 MyDraw 的自定义 View ,这是我的 MyDraw 代码,
public class MyDraw extends View {
public MyDraw(Context context) {
super(context);
}
public MyDraw(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
}
public MyDraw(Context context, AttributeSet attrs) {
super(context, attrs);
}
........................................
}
我已经使用包名称在 XML 文件中添加了 View 。它工作正常。现在我想在运行时为 MyDraw 设置高度和宽度,为此我使用了以下代码,
mMyDraw.setLayoutParams(new LayoutParams(220, 300));
但我遇到了异常,
java.lang.ClassCastException: android.view.ViewGroup$LayoutParams
如何解决这个异常? 请帮助我..
最佳答案
您必须覆盖 View 的 onMeasure() 方法。
一个很好的例子,你可以在这里查看:http://kahdev.wordpress.com/2008/09/13/making-a-custom-android-button-using-a-custom-view/
这里是我推荐的一个非常酷的视频:http://marakana.com/forums/android/general/563.html
希望这对您有所帮助!
关于android - 如何以编程方式设置自定义 View 的宽度和高度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8558071/