Android LinearLayout未显示

Android LinearLayout未显示,android,android-layout,Android,Android Layout,我的xml有问题。我有一个线性布局,其中包含一个图表(aChartEngine库),如果我将高度设置为480dp,它将显示图表,如果我将高度设置为wrap_内容,则不会显示任何内容。我觉得父母有问题。这是整个xml文件 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_

我的xml有问题。我有一个线性布局,其中包含一个图表(aChartEngine库),如果我将高度设置为480dp,它将显示图表,如果我将高度设置为wrap_内容,则不会显示任何内容。我觉得父母有问题。这是整个xml文件

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"

tools:context=".Sniffer" >

<TabHost
    android:id="@+id/tabHost"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_alignParentLeft="true"
    android:layout_alignParentTop="true"
    android:background="@color/black" >

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

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:orientation="vertical" >

            <TabWidget
                android:id="@android:id/tabs"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:background="@color/white" >
            </TabWidget>

            <FrameLayout
                android:id="@android:id/tabcontent"
                android:layout_width="match_parent"
                android:layout_height="match_parent" >

                <LinearLayout
                    android:id="@+id/tab1"
                    android:layout_width="match_parent"
                    android:layout_height="match_parent"
                    android:paddingLeft="10dp"
                    android:paddingRight="10dp"
                    android:orientation="vertical" >

                   <!-- removed some content here, 2 much space and not relevant -->

                </LinearLayout>

                <LinearLayout
                    android:id="@+id/tab2"
                    android:layout_width="match_parent"
                    android:layout_height="match_parent"
                    android:paddingLeft="10dp"
                    android:paddingRight="10dp"
                    android:orientation="vertical" >

                    <View
                      android:layout_width="1dp"
                      android:layout_height="30dp">
                    </View>

                    <View
                        style="@style/Divider"
                        android:background="@color/semi_transparent"/>

                </LinearLayout>

                <LinearLayout
                    android:id="@+id/tab3"
                    android:layout_width="match_parent"
                    android:layout_height="match_parent"
                    android:paddingLeft="10dp"
                    android:paddingRight="10dp"
                    android:orientation="vertical" >

                    <View
                      android:layout_width="1dp"
                      android:layout_height="30dp">
                    </View>

                    <View
                        style="@style/Divider"
                        android:background="@color/semi_transparent"/>

                </LinearLayout>

                 <LinearLayout
                    android:id="@+id/tab4"
                    android:layout_width="match_parent"
                    android:layout_height="match_parent"
                    android:paddingLeft="10dp"
                    android:paddingRight="10dp"
                    android:orientation="vertical" >

                    <View
                      android:layout_width="1dp"
                      android:layout_height="30dp">
                    </View>

                    <LinearLayout
                        android:id="@+id/chart"
                        android:layout_width="match_parent"
                        android:layout_height="500dp"                    
                        android:orientation="horizontal">
                    </LinearLayout>

                </LinearLayout>
            </FrameLayout>
        </LinearLayout>
    </ScrollView>
</TabHost>

在表4下有一个带图表id的线性布局。这是我放置图表的地方。我尝试使用“权重”属性和0dip,但仍然不起作用,只是在固定高度下

LE:LinearLayout是空的,因为我通过编程向它添加内容

图表的代码段

public void createGraphCPU(List<BasicNameValuePair> values){

    mSeries = new CategorySeries("");
    mRenderer = new DefaultRenderer();
    statisticsTab.removeAllViews();

    Collections.shuffle(COLORS_LIST);
    for(int i=0;i<values.size();i++){
        double value=Double.parseDouble(values.get(i).getValue());
        mSeries.add( values.get(i).getName(),value );
        SimpleSeriesRenderer renderer = new SimpleSeriesRenderer();
        renderer.setColor(COLORS_LIST.get(i%COLORS_LIST.size()));
        renderer.setDisplayChartValues(true);
        mRenderer.addSeriesRenderer(renderer);
    }

     mRenderer.setChartTitleTextSize(20); 
     mRenderer.setChartTitle("CPU Energy Consumption");
     mRenderer.setLabelsTextSize(15);  
     mRenderer.setLegendTextSize(15);  
     mRenderer.setMargins(new int[] { 20, 15, 15, 0 });  
     mRenderer.setZoomButtonsVisible(true);  

     if (mChartView != null) {
          mChartView.repaint();
    }
     else{
         mChartView = ChartFactory.getPieChartView(this, mSeries,mRenderer);
        statisticsTab.addView(mChartView, new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT));
     }

}
public void createGraphCPU(列表值){
M系列=新的类别系列(“”);
mRenderer=新的DefaultRenderer();
统计选项卡。移除所有视图();
集合。洗牌(颜色列表);

对于(int i=0;i你说,当你为
android:layout\u height
指定固定高度时,你可以看到你的图表;当你使用
wrap\u content
时,你看不到你的图表。如果是这样的话,这种行为的原因是你的图表本身没有提供高度——事实上,你指定
fill\u parent
作为它的宽度和高度8.因此,如果你的线性布局想要和你的图表一样小(
wrap\u content
),而你的图表想要和它周围的线性布局一样大(
fill\u parent
),Android根本不会显示你的图表


然后,解决方案可能是更好地问自己想要为图表指定的宽度和高度。

id为chart的LinearLayout看起来是空的,因为其中没有任何项目?是的,很抱歉没有指定,我以编程方式在其中添加项目。这只是一个来自某个Cartengine库的图形视图,但问题就在这里s可能与您分配给图表视图的布局参数有关。您可以共享添加图表视图的代码吗?您是否使用LinearLayout。LayoutParams?目前我有三个图表,每个图表位于不同的LinearLayout上。Atm每个LinearLayout都有一个高度,它后面的图表被前一个LinearLayout剪裁。让我尝试设置一个f固定图表本身的高度并查看剪辑是否消失。找不到一种方法来指定图表本身的高度,我必须使用包含它的线性布局的高度,我认为没有其他选择。如果有人使用aChartEngine并知道如何使用,请提供一些见解。也就是说,我如何使用一个高度制作3个线性布局ht为400dp,可以说是一个低于另一个,而不是剪裁。例如,我的第二张图表被剪裁为一半。我尝试将它们包装到一个相对的图表中,并使用下面的布局,但图表仍然被剪裁。如果您想在可滚动视图中查看视图,则需要使用
列表视图
线性布局
不是您的pr的正确解决方案问题。当你使用ListView时,然后为每个列表项应用一个视图高度为
400dp
。下面是它的外观:你的问题是你在滚动视图中使用了LinearLayout。这是错误的。只使用ListView。没有LinearLayout。我不能给你更多的帮助。