2016-01-08 64 views
1

我的应用程序出现“问题”,我不知道发生了什么。三星J5中的Android Textview settext问题

我有这样的接口:

<LinearLayout 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:layout_marginTop="1dp" 
    android:orientation="vertical" > 

    <Button 
     android:layout_width="fill_parent" 
     android:layout_height="50dp" 
     android:background="@color/white" 
     android:gravity="center" 
     android:textColor="@color/black" /> 

    <TextView 
     android:id="@+id/detailServiceTxtPhone" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_gravity="center" 
     android:layout_marginTop="-35dp" 
     android:ellipsize="end" 
     android:gravity="center" 
     android:maxLength="50" 
     android:singleLine="true" 
     android:textColor="@color/black" /> 

</LinearLayout> 

我从一个Web服务在Java代码中字段的值,并设置文本:

m_txtPhone.setText(m_currentService.PassengerPhone); 

中的所有设备,我检查,这是结果: 12345678

但我有一个与三星J5(5.1.1)的问题。当我尝试设置在TextView(和同类者)的文本我有这样的结果:

Empty view

看来,我有一些问题,设置文本或我不知道。任何想法?

注: 我实现这样的接口,因为在其他情况下,我做这样的事情:

<LinearLayout 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:layout_marginTop="1dp" 
    android:orientation="vertical" > 

    <Button 
     android:id="@+id/detailServiceBtnClient" 
     android:layout_width="fill_parent" 
     android:layout_height="50dp" 
     android:background="@color/white" 
     android:drawableRight="@drawable/icon_detail" 
     android:gravity="left|center_vertical" 
     android:paddingLeft="5dp" 
     android:paddingRight="5dp" 
     android:text="@string/detailServiceBtnClient" 
     android:textColor="@color/black" /> 

    <TextView 
     android:id="@+id/detailServiceTxtClient" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_gravity="right" 
     android:layout_marginRight="25dp" 
     android:layout_marginTop="-35dp" 
     android:ellipsize="end" 
     android:gravity="center" 
     android:maxLength="50" 
     android:singleLine="true" 
     android:textColor="@color/black" /> 

</LinearLayout> 

Cliente<--->aRTyMaNYa

+0

为什么向我们展示xml?我们需要代码来理解“m_currentService.PassengerPhone” – MeGoodGuy

+0

抱歉。 “m_currentService”是一个包含所有定义服务的属性的对象。该属性是手机,代码,状态,日期时间创建等我填充此属性的Web服务响应,我敢肯定,这些属性填充,但只在三星Galaxy J5时,我做textview.setText文本是空白。 – aRTyMaNYa

+0

你确定这些属性已填充。请尝试一个setText(“测试”),以便 – MeGoodGuy

回答

0

您正在使用的LinearLayout。在这个布局中,项目被添加到每个元素之后。你的方向是垂直的,因此,它位于按钮下方。使用RelativeLayout,然后使用TextView的alignTop和alignBottom属性。

android:alignTop="@+id/button" 
android:alignBottom="@+id/button" 
android:gravity="center" 
+0

谢谢Keshav。我尝试了它,结果是一样的,不显示任何文本...我将LinearLayout修改为RelativeLayout,并在textview xml代码中添加layout_alignTop/Bottom。 – aRTyMaNYa

+0

删除TextView中的marginTop – Keshav

+0

它也被删除。 如果我把textview放在按钮之前,会出现文字,但文字是粗体的,我不把这种风格... – aRTyMaNYa