qq_23146625
qq_23146625
采纳率0%
2016-03-15 01:32 阅读 3.2k

Android自定义控件在scrollview中设置高度不起作用,已经重写了 onMeasure方法

3

布局:
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fillViewport="true">

    <RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent">

        <TextView
            android:id="@+id/title_template"
            android:layout_width="match_parent"
            android:text="hahahah"
            android:layout_height="700dp" />

        <com.tky.mpchart.View.BarChart2View
            android:id="@+id/fl_chart2"
            android:layout_below="@+id/title_template"
            android:layout_width="match_parent"
            android:layout_height="600dp" />
    </RelativeLayout>
</ScrollView>

    自定义控件:

     protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
    super.onMeasure(widthMeasureSpec, heightMeasureSpec);
    this.setMeasuredDimension(this.measureWidth(widthMeasureSpec), this.measureHeight(heightMeasureSpec));
}

private int measureWidth(int measureSpec) {
    int result = 100;
    int specMode = MeasureSpec.getMode(measureSpec);
    int specSize = MeasureSpec.getSize(measureSpec);
    if(specMode == 1073741824) {
        result = specSize;
    } else if(specMode == -2147483648) {
        result = Math.min(result, specSize);
    }

    return result;
}

private int measureHeight(int measureSpec) {
    int result = 100;
    int specMode = MeasureSpec.getMode(measureSpec);
    int specSize = MeasureSpec.getSize(measureSpec);
    if(specMode == 1073741824) {
        result = specSize;
    } else if(specMode == -2147483648) {
        result = Math.min(result, specSize);
    }

    return result;
}
  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

2条回答 默认 最新

  • u011249920 简一_hz 2016-03-15 02:45

    你把RelativeLayout的高度改成wrap_content看看

    点赞 评论 复制链接分享
  • lxk_1993 103style 2016-03-15 11:17

    你的吧ScrollView 里面的那层换成linearlayout

    http://blog.sina.com.cn/s/blog_6cf2ea6a0102v61f.html

    点赞 评论 复制链接分享

相关推荐