刚开始动态设置listview的高度,发现并没有用
@Override
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
//测量的大小由一个32位的数字表示,前两位表示测量模式,后30位表示大小,这里需要右移两位才能拿到测量的大小
int heightSpec = MeasureSpec.makeMeasureSpec(Integer.MAX_VALUE >> 2, MeasureSpec.AT_MOST);
super.onMeasure(widthMeasureSpec, heightSpec);
}
解决方式:直接在ListView前面加一个NestedScrollView就可以完全显示了
<androidx.core.widget.NestedScrollView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/white">
<com.example.photography.view.MyListView
android:id="@+id/lv_product"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginTop="5dp"
android:background="@color/white"/>
</androidx.core.widget.NestedScrollView>