Webview动态更改高度

时间:2015-11-19 08:20:08

标签: android webview

我正在使用webview。我创建了groupitem,每个groupitem都有一个子项目。我想根据内容调整webview的高度。 当WebView显示不同的子项时,它的内容会发生变化。但问题是当我将较小的内容加载到更大的内容时,它会延伸该区域。但如果我从较大的内容到较低的内容,它不会调整空间大小。它会为内容增加额外的空间。 有没有办法做到这一点? 这是我的代码

@Override
        public long getChildId(int groupPosition, int childPosition) {
            return childPosition;
        }

        @Override
        public View getRealChildView(int groupPosition, int childPosition,
                                     boolean isLastChild, View convertView, ViewGroup parent) {
            ChildHolder holder;
            ChildItem item = getChild(groupPosition, childPosition);
            if (convertView == null) {
                holder = new ChildHolder();
                convertView = inflater.inflate(R.layout.list_item, parent,
                        false);
                holder.title = (WebView) convertView
                        .findViewById(R.id.textTitle_list);
                /*holder.hint = (TextView) convertView
                        .findViewById(R.id.textHint);*/
                convertView.setTag(holder);
            } else {
                holder = (ChildHolder) convertView.getTag();
            }

            holder.title.loadData("<p style='text-align:justify;font-size:15px;padding:0 10;margin:0'>" + String.format(htmlText, item.title) + "</p>", "text/html", "utf-8");

            //holder.hint.setText(item.hint);

            return convertView;
        }

1 个答案:

答案 0 :(得分:0)

之前我遇到过这个问题,而解决方法就是放弃XML。

您的WebView无法通过convertView.findViewById()方法初始化。

创建您的WebView对象并加载其中的内容。

加载后,将儿童视图添加到convertView

您必须在ViewHolder init方法中使用convertView.addView(WebView)