TextView不显示任何文本

时间:2014-11-14 09:57:38

标签: android textview

我有2 TextView个,但其中一个没有显示任何文字。我在LogCat中看到了,但在应用程序中它并没有显示。我确定问题出在我的xml文件中,但我不知道究竟是什么。我也在这里看了很多这样的帖子,我尝试了不同的东西,但非帮助我。这是布局

<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="match_parent" >

<LinearLayout 
    android:layout_width="320dp"
    android:layout_height="wrap_content"
    android:minHeight="50dp"
    android:orientation="vertical" >

    <LinearLayout
        android:layout_width="300dp"
        android:layout_height="0dp"
        android:layout_marginLeft="10dp"
        android:layout_marginTop="5dp"
        android:layout_weight="10.18"
        android:background="@drawable/buttons"
        android:orientation="vertical" >

        <TextView
            android:id="@+id/name"
            android:layout_width="280dp"
            android:layout_height="wrap_content"
            android:paddingBottom="10dp"
            android:paddingLeft="5dp"
            android:paddingTop="5dp"
            android:text="" />

        <TextView
            android:id="@+id/text"
            android:layout_width="280dp"
            android:layout_height="wrap_content"
            android:paddingBottom="10dp"
            android:paddingLeft="5dp"
            android:paddingTop="5dp"
            android:layout_marginTop="10dp"
            android:text="" />

    </LinearLayout>

    <LinearLayout
        android:layout_width="300dp"
        android:layout_height="fill_parent"
        android:layout_marginLeft="10dp"
        android:layout_marginTop="5dp"
        android:orientation="vertical" >

        <Button
            android:id="@+id/pressMe"
            android:layout_width="300dp"
            android:layout_height="40dp"
            android:layout_marginTop="5dp"
            android:background="@drawable/bg_button"
            android:gravity="center"
            android:padding="4dp"
            android:text="@string/PressMe" />

        <Button
            android:id="@+id/dontPress"
            android:layout_width="300dp"
            android:layout_height="40dp"
            android:layout_marginTop="5dp"
            android:layout_marginBottom="5dp"
            android:background="@drawable/bg_button"
            android:gravity="center"
            android:padding="4dp"
            android:text="@string/DontPressMe" />
    </LinearLayout>

</LinearLayout>

</ScrollView>

有问题的TextView"@+id/name"

我也可以通过putExtragetExtra

从其他活动中获取这些内容
intent.putExtra("text", stocks[position].text); 
intent.putExtra("name", stocks[position].name);

Bundle b = getIntent().getExtras();
    if (b != null) {
        name = b.getString("name");
        textView.setText(name+"");
        text = b.getString("text");
        textView.setText(text+"");

所以text就在那里,但name丢失了。在第一个活动上都有。

    textView = (TextView) findViewById(R.id.name);
    textView = (TextView) findViewById(R.id.text);

6 个答案:

答案 0 :(得分:3)

您的布局没有问题

但问题在于你的代码,你必须在你的oncreate方法中找到textView。  你确实找到了两者,但问题是当你设置文本时,使用相同的文本引用

这里你对两个文本视图都采用相同的参考。像这样改变它。

TextView txtName = (TextView)findviewbyid(R.id.name);
TextView txtText = (TextView)findviewbyid(R.id.text);

    Bundle b = getIntent().getExtras();
        if (b != null) {
            name = b.getString("name");
           //change here txtName.setText(name+"");
            text = b.getString("text");
            //change here txtText.setText(text+"");
}

答案 1 :(得分:2)

android:paddingBottom="10dp"

为什么你有这个?

尝试将其删除或更改为:

android:layout_marginBottom="10dp"

答案 2 :(得分:2)

您使用以下方法覆盖同一TextView对象中的文本:

textView = (TextView) findViewById(R.id.name);
textView = (TextView) findViewById(R.id.text);
textView.setText(name+"");
textView.setText(text+"");

保留两个单独的textview并执行此操作:

TextView textview1, textview2;
textView1 = (TextView) findViewById(R.id.name);
textView2 = (TextView) findViewById(R.id.text);
textView1.setText("name");
textView2.setText("description");

希望它有所帮助。

答案 3 :(得分:1)

尝试使用以下代码:

<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="match_parent" >

    <LinearLayout
        android:layout_width="320dp"
        android:layout_height="wrap_content"
        android:minHeight="50dp"
        android:orientation="vertical" >

        <LinearLayout
            android:layout_width="300dp"
            android:layout_height="wrap_content"
            android:layout_marginLeft="10dp"
            android:layout_marginTop="10dp"
            android:background="@drawable/chat_add_contact"
            android:orientation="vertical" >

            <TextView
                android:id="@+id/name"
                android:layout_width="280dp"
                android:layout_height="wrap_content"
                android:paddingLeft="5dp"
                android:paddingTop="5dp"
                android:text="dsgdsfgdfhdgfhfjhgfj" />

            <TextView
                android:id="@+id/text"
                android:layout_width="280dp"
                android:layout_height="wrap_content"
                android:paddingBottom="10dp"
                android:paddingLeft="5dp"
                android:paddingTop="10dp"
                android:layout_marginTop="10dp"
                android:text="sfgdfhgfjgfjhgjhg" />

        </LinearLayout>

        <LinearLayout
            android:layout_width="300dp"
            android:layout_height="fill_parent"
            android:layout_marginLeft="10dp"
            android:layout_marginTop="5dp"
            android:orientation="vertical" >

            <Button
                android:id="@+id/pressMe"
                android:layout_width="300dp"
                android:layout_height="40dp"
                android:layout_marginTop="5dp"
                android:background="@drawable/ic_launcher"
                android:gravity="center"
                android:padding="4dp"
                android:text="PressMe" />

            <Button
                android:id="@+id/dontPress"
                android:layout_width="300dp"
                android:layout_height="40dp"
                android:layout_marginTop="5dp"
                android:layout_marginBottom="5dp"
                android:background="@drawable/ic_launcher"
                android:gravity="center"
                android:padding="4dp"
                android:text="DontPressMe" />
        </LinearLayout>

    </LinearLayout>

</ScrollView>

答案 4 :(得分:1)

TextView txtCont = (TextView) findViewById(R.id.name);

答案 5 :(得分:1)

更改此代码可能会对您有所帮助,

Bundle b = getIntent().getExtras();
    if (b != null) {
        name = b.getString("name");
        ((TextView)findviewbyid(R.id.name)).setText(name+"");
        text = b.getString("text");
        ((TextView)findviewbyid(R.id.text)).setText(text+"");