getSuggestedMinimumHeight方法的默认实现如下:
protected int getSuggestedMinimumHeight() {
return (mBackground == null) ? mMinHeight : max(mMinHeight, mBackground.getMinimumHeight());
}
重写getSuggestedMinimumHeight方法,代码如下
package com.ivan.activitylifetest
import android.content.Context
import android.util.AttributeSet
import android.widget.LinearLayout
class MyLinearLayout : LinearLayout{
constructor(context: Context) : super(context)
constructor(context: Context, attrs: AttributeSet?) : super(context, attrs)
constructor(context: Context, attrs: AttributeSet?, defStyleAttr: Int) : super(
context,
attrs,
defStyleAttr
)
override fun getSuggestedMinimumHeight(): Int {
return minimumHeight
}
}
不重写LinearLayout,android:layout_height="wrap_content"的效果如下
重写LinearLayout,android:layout_height="wrap_content"的效果如下
备注
自定义view的教程
https://www.runoob.com/w3cnote/android-advance-custom-view.html
自定义viewgroup的教程
https://www.runoob.com/w3cnote/android-advance-viewgrouphtml.html