在LinearLayout中看不到TextViews?

时间:2013-06-06 06:20:03

标签: android xml android-listview android-linearlayout

我在TextView内有一些LinearLayout个。在运行时,LinearLayout是可见的,但TextViews都不可见。这是XML:

<FrameLayout
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="0.5384615384615385"
        android:scaleType="fitXY"
        android:adjustViewBounds="true">
<LinearLayout 
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">
    <LinearLayout 
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:gravity="center"
    android:orientation="horizontal"
    >
    <TextView
            android:id="@+id/onezero"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:text="one"
            android:typeface="sans"
            android:layout_weight="1"
            android:layout_margin="17dp"
            android:textIsSelectable="true"
            android:clickable="true" />
    <TextView
            android:id="@+id/oneone"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:text="two"
            android:typeface="sans"
            android:layout_margin="17dp"
            android:textIsSelectable="true"
            android:clickable="true" />
    <TextView
            android:id="@+id/onefour"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:text="three"
            android:layout_weight="1"
            android:typeface="sans"
            android:layout_margin="17dp"
            android:textIsSelectable="true"
            android:clickable="true" />
    <TextView
            android:id="@+id/other"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:text="four"
            android:layout_margin="17dp"
            android:typeface="sans"
            android:layout_weight="1" 
            android:textIsSelectable="true"
            android:clickable="true" />
    </LinearLayout>
    <ScrollView 
        android:id="@+id/scrollview1"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:scrollbars="vertical"
    android:fillViewport="true">
    <TextView
            android:id="@+id/tv1"
            android:layout_width="fill_parent"
        android:layout_height="wrap_content"

            android:typeface="sans"
            android:textSize="17sp" 
            />

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

如何让它们可见?

编辑:访问此布局的代码:

void fragment(){
                ten.setTextColor(0xFFFFFF);//These are the 4 TextViews
        eleven.setTextColor(0xFFFFFF);
        fourteen.setTextColor(0xFFFFFF);
        other.setTextColor(0xFFFFFF);

            ten.setVisibility(View.VISIBLE);
            eleven.setVisibility(View.VISIBLE);
        fourteen.setVisibility(View.VISIBLE);
        other.setVisibility(View.VISIBLE);
}

我正在初始化textviews的代码:

ten=(TextView)findViewById(R.id.onezero);
eleven=(TextView)findViewById(R.id.oneone); 
fourteen=(TextView)findViewById(R.id.onefour);
other=(TextView)findViewById(R.id.other);

编辑:我尝试点击LinearLayout区域,TextViews正在注册点击次数...这意味着它们在那里但却看不见......

6 个答案:

答案 0 :(得分:2)

您使用的颜色是白色......

 0xFFFFFF

尝试更改颜色以与布局颜色形成对比。

编辑:

我花了很长时间才意识到这一点..尝试使用以下代码:

 textview.setTextColor(Color.parseColor("#bdbdbd"));

答案 1 :(得分:0)

使用此前缀

更改布局
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"

在FrameLayout android:layout_height="0dp"中,这会使视图不可见,可能用于layout_width应为wrap_content

答案 2 :(得分:0)

你正在使用android:layout_weight - 基于比率的空间分布。要使它工作,你必须设置:

机器人:layout_width = “0dp”

答案 3 :(得分:0)

在xml中添加此内容

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"

然后在java类中更改文本颜色

使用

000000

而不是

0xFFFFFF

答案 4 :(得分:0)

You have not assigned the layout_height of your parent layout i.e. FrameLayout. Try this:

<FrameLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_weight="0.5384615384615385"
    android:adjustViewBounds="true"
    android:scaleType="fitXY" >

    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:orientation="vertical" >

        <LinearLayout
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:gravity="center"
            android:orientation="horizontal" >

            <TextView
                android:id="@+id/onezero"
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:layout_margin="17dp"
                android:layout_weight="1"
                android:clickable="true"
                android:text="one"
                android:textIsSelectable="true"
                android:typeface="sans" />

            <TextView
                android:id="@+id/oneone"
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:layout_margin="17dp"
                android:layout_weight="1"
                android:clickable="true"
                android:text="two"
                android:textIsSelectable="true"
                android:typeface="sans" />

            <TextView
                android:id="@+id/onefour"
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:layout_margin="17dp"
                android:layout_weight="1"
                android:clickable="true"
                android:text="three"
                android:textIsSelectable="true"
                android:typeface="sans" />

            <TextView
                android:id="@+id/other"
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:layout_margin="17dp"
                android:layout_weight="1"
                android:clickable="true"
                android:text="four"
                android:textIsSelectable="true"
                android:typeface="sans" />
        </LinearLayout>

        <ScrollView
            android:id="@+id/scrollview1"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:fillViewport="true"
            android:scrollbars="vertical" >

            <TextView
                android:id="@+id/tv1"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:textSize="17sp"
                android:typeface="sans" />
        </ScrollView>
    </LinearLayout>

</FrameLayout>

答案 5 :(得分:0)

显然,在以下颜色中使用十六进制代码:

    ten.setTextColor(0xFFFFFF);//These are the 4 TextViews
    eleven.setTextColor(0xFFFFFF);
    fourteen.setTextColor(0xFFFFFF);
    other.setTextColor(0xFFFFFF);

不起作用。我使用0xFFFFFF

切换了Color.WHITE
    ten.setTextColor(Color.WHITE);//These are the 4 TextViews
    eleven.setTextColor(Color.WHITE);
    fourteen.setTextColor(Color.WHITE);
    other.setTextColor(Color.WHITE);

这很有效。

编辑:弄清楚为什么十六进制代码不起作用。我们需要在每个十六进制的开头附加一个透明度十六进制。例如,如果您希望颜色为80%不透明,则可以使用以下方法找到透明度十六进制:

255 * 0.8 = 204

现在将204转换为十六进制(使用谷歌),您将获得0xCC。在十六进制代码之前添加此项,您将获得0xCCFFFFFF。使用它可以使它完美运行。