android-自定义viewGroup中放入fragment view,但是fragment中的内容不显示

问题描述

自定义viewGroup中放入fragment view,但是fragment中的内容不显示

自定义viewGroup中放入fragment view,但是fragment中的内容显示不到界面上,明明fragment中的oncreateview都走了,而且返回的view不为空?求解!!!

<?xml version="1.0" encoding="utf-8"?>
android:id="@+id/test_viewgroup"
android:layout_width="match_parent"
android:layout_height="match_parent"
>

<TextView
    android:id="@+id/top"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="@android:color/black"
    />
<!--<TextView
    android:id="@+id/bottom"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:text="sssssss"
    android:background="@android:color/white"
    />-->
<FrameLayout
    android:id="@+id/bottom"
    android:layout_width="match_parent"
    android:layout_height="wrap_content">
</FrameLayout>

protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.test_view_group);
//mBottomView = (TextView) findViewById(R.id.bottom);
//mViewGroup = (TestViewGroup) findViewById(R.id.test_viewgroup);
mTopView.setOnClickListener(this);
mBottomFragment = new BottomFragment();
FragmentTransaction transaction = getFragmentManager().beginTransaction();
transaction.replace(R.id.bottom, mBottomFragment);
transaction.commit();
}

    public class BottomFragment extends Fragment {
@Nullable
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
    View view = inflater.inflate(R.layout.test_sliding, container, false);
    return view;
}

}

protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
Log.i("edward", "onMeasure");
super.onMeasure(widthMeasureSpec, heightMeasureSpec);
// 测量子view的大小
//measureChildren(widthMeasureSpec, heightMeasureSpec);
}

@Override
protected void onLayout(boolean changed, int left, int top, int bottom, int right) {
    Log.i("edward", "onLayout");
    int width = getMeasuredWidth();
    int height = getMeasuredHeight();
    for(int i = 0; i < 2; i++) {
        View child = getChildAt(i);
        if (i == 0) {
            child.layout(0, 0, width, height / 2 - mOffset);
        }
        if (i == 1) {
            child.layout(0, height / 2 - mOffset, width, height);
        }
    }
}

fragment 布局中的东西显示不出来

解决方案

问题解决了,自定义viewGroup中onmeasure中必须加上child.measure(widthSpec, heightSpec);

解决方案二:

fragment用法和普通的view不太一样,你肯定没用对,找个博客学习一下

解决方案三:

如果fragment没问题,就是你的自定义viewgroup有问题,你可以将fragment放入到别的viewgroup,比如linearlayout,测试看看

解决方案四:

问题解决了,自定义viewGroup中onmeasure中必须加上child.measure(widthSpec, heightSpec);

解决方案五:

问题解决了,自定义viewGroup中onmeasure中必须加上child.measure(widthSpec, heightSpec);

解决方案六:

问题解决了,自定义viewGroup中onmeasure中必须加上child.measure(widthSpec, heightSpec);

解决方案七:

问题解决了,自定义viewGroup中onmeasure中必须加上child.measure(widthSpec, heightSpec);

解决方案八:

你可以把fragment换成view

解决方案九:

你可以把fragment换成view

解决方案十:

你可以把fragment换成view

时间: 2024-10-26 05:48:58

android-自定义viewGroup中放入fragment view,但是fragment中的内容不显示的相关文章

Android自定义ViewGroup打造各种风格的SlidingMenu_Android

上篇给大家介绍QQ5.0侧滑菜单的视频课程,对于侧滑的时的动画效果的实现有了新的认识,似乎打通了任督二脉,目前可以实现任意效果的侧滑菜单了,感谢鸿洋大大!! 用的是HorizontalScrollView来实现的侧滑菜单功能,HorizontalScrollView的好处是为我们解决了滑动功能,处理了滑动冲突问题,让我们使用起来非常方便,但是滑动和冲突处理都是android中的难点,是我们应该掌握的知识点,掌握了这些,我们可以不依赖于系统的API,随心所欲打造我们想要的效果,因此这篇文章我将直接

Android自定义ViewGroup实现绚丽的仿支付宝咻一咻雷达脉冲效果_Android

去年春节的时候支付宝推行的集福娃活动着实火的不能再火了,更给力的是春晚又可以全民参与咻一咻集福娃活动,集齐五福就可平分亿元大红包,只可惜没有敬业福--那时候在家没事写了个咻一咻插件,只要到了咻一咻的时间点插件就可以自动的点击咻一咻来咻红包,当时只是纯粹练习这部分技术代码没有公开,后续计划写篇关于插件这方面的文章,扯远了(*^__^*) --我们知道在支付宝的咻一咻页面有个雷达扩散的动画效果,当时感觉动画效果非常棒,于是私下尝试着实现了类似的效果,后来在github发现有大神也写有类似效果,于是读

Android自定义ViewGroup实现标签流容器FlowLayout_Android

本篇文章讲的是Android 自定义ViewGroup之实现标签流式布局-FlowLayout,开发中我们会经常需要实现类似于热门标签等自动换行的流式布局的功能,网上也有很多这样的FlowLayout,但不影响我对其的学习.和往常一样,主要还是想总结一下自定义ViewGroup的开发过程以及一些需要注意的地方. 按照惯例,我们先来看看效果图 一.写代码之前,有几个是问题是我们先要弄清楚的: 1.什么是ViewGroup:从名字上来看,它可以被翻译为控件组,言外之意是ViewGroup内部包含了许

Android自定义ViewGroup打造各种风格的SlidingMenu

上篇给大家介绍QQ5.0侧滑菜单的视频课程,对于侧滑的时的动画效果的实现有了新的认识,似乎打通了任督二脉,目前可以实现任意效果的侧滑菜单了,感谢鸿洋大大!! 用的是HorizontalScrollView来实现的侧滑菜单功能,HorizontalScrollView的好处是为我们解决了滑动功能,处理了滑动冲突问题,让我们使用起来非常方便,但是滑动和冲突处理都是android中的难点,是我们应该掌握的知识点,掌握了这些,我们可以不依赖于系统的API,随心所欲打造我们想要的效果,因此这篇文章我将直接

viewgroup 传参-android自定义ViewGroup的问题

问题描述 android自定义ViewGroup的问题 在名为Demo的activity中用到了一个继承ViewGroup的类MyView来布局,具体是这样的 在Demo的布局文件xml中, 在Demo的代码中 MyView scroll = (MyView) findViewById(R.id.view1); 在MyView中的构造函数 public MyView(Context context, AttributeSet attrs) { //各类操作 } 问题是Demo需要给scroll传

Android自定义ViewGroup实现受边界限制的滚动操作(3)_Android

上一篇文章<自定义viewgroup(2)>地址:http://www.jb51.net/article/100610.htm 代码 package com.example.libingyuan.horizontallistview.ScrollViewGroup; import android.content.Context; import android.util.AttributeSet; import android.util.DisplayMetrics; import androi

Android自定义ViewGroup之子控件的自动换行和添加删除

常用的布局类型并不能满足所有需求,这时就会用到ViewGroup. ViewGroup作为一个放置View的容器,并且我们在写布局xml的时候,会告诉容器(凡是以layout为开头的属性,都是为用于告诉容器的),我们的宽度(layout_width).高度(layout_height).对齐方式(layout_gravity)等:当然还有margin等:于是乎,ViewGroup需要做的事情是:给childView计算出建议的宽和高和测量模式 :决定childView的位置:为什么只是建议的宽和

Android 自定义ViewGroup

前面几节,我们重点讨论了自定义View的三板斧,这节我们来讨论自定义ViewGroup,为什么要自定义ViewGroup,其实就是为了更好的管理View. 自定义ViewGroup无非那么几步: Ⅰ.重写OnMeasure()方法,测试子控件的大小. Ⅱ.重写onLayout()方法,计算子控件的布局. Ⅲ.在onDraw()方法中,绘制子控件,可有可无. Ⅳ.监听onTouch事件,响应屏幕触摸事件. 相应思维导图如下所示: 连篇累牍的说了这么多,我们通过一个小案例来理解这个自定义ViewGr

Android自定义ViewGroup之WaterfallLayout(二)_Android

上一篇我们学习了自定义ViewGroup的基本步骤,并做了一个CustomGridLayout的实例,这篇我们继续来说说自定义ViewGroup. Android中当有大量照片需要展示的时候,我们可以用GridView作为照片墙,但是GridView太整齐了,有时候不规则也是一种美,瀑布流模型就是这样一个不规则的展示墙,接下来我们尝试用自定义ViewGroup来实现瀑布流. 实现瀑布流的方式也有很多,下面我们一一道来: 一.继承ViewGroup 其实这种实现方式我们只需要在上篇博客的基础上稍作