2016-05-16 4 views
0

ViewFlipperを使用して、画像(ImageView)、動画(VideoView)、テキスト(TextView)などの異なるビューのスライドショーを表示するアプリケーションを作成しています。私の問題は、ViewFlipperにImageまたはVideoを追加すると完全に動作していることです。しかし、TextViewを追加しようとすると、ViewFlipperは何も表示していません。次のコードを確認し、この問題を解決するにはどうすればよいですか、またはコーディングで間違ったことを教えてください。ViewFlipperでTextViewを動的に追加できない

これは私がViewFlipperでのTextViewを追加する方法である:ここでは

LayoutInflater layoutInflater = (LayoutInflater) context.getSystemService(LAYOUT_INFLATER_SERVICE); 
View view = layoutInflater.inflate(R.layout.ems_source, relativeLayout, false); 
TextView tvEms = (TextView) view.findViewById(R.id.tvEms); 
tvEms.setText(ems.get(0).getMessage()); 


viewFlipper.addView(tvEms); 
viewFlipper.setInAnimation(context, R.anim.slide_from_left); 
viewFlipper.setOutAnimation(context, R.anim.slide_out_right); 
viewFlipper.showNext(); 

は私ems_source.xmlです:ここでは

<TextView android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:textAppearance="?android:attr/textAppearanceLarge" 
    android:text="Large Text" 
    android:id="@+id/tvEms" 
    android:textSize="20sp" 
    android:gravity="center" 
    android:layout_alignParentTop="true" 
    android:layout_alignParentLeft="true" 
    android:layout_alignParentStart="true" 
    xmlns:android="http://schemas.android.com/apk/res/android" /> 

は私のDisplayActivityのXMLです:

<?xml version="1.0" encoding="utf-8"?> 
<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" 
    android:id="@+id/relative" 
    android:background="#000000" 
    tools:context="com.signageocean.signageocean.activities.ActivityDisplay" 
    android:gravity="center"> 

    <ViewFlipper 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:id="@+id/viewFlipper" 
     android:layout_alignParentTop="true" 
     android:layout_alignParentBottom="true" 
     android:layout_alignParentLeft="true" 
     android:layout_alignParentRight="true" 
     android:layout_alignParentStart="true" > 

    </ViewFlipper> 

</RelativeLayout> 
+0

ems.get(0).getMessage()がnullまたは空白でないことを確認してください。 –

+0

nullではありません。それはメッセージを含んでいます。 – Dhaval

答えて

1

あなたems_source .xmlは次のようになります。

<?xml version="1.0" encoding="utf-8"?> 
<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" 
    android:background="#000000" 
    android:gravity="center"> 

<TextView android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:textAppearance="?android:attr/textAppearanceLarge" 
    android:text="Large Text" 
    android:id="@+id/tvEms" 
    android:textSize="20sp" 
    android:gravity="center" 
    android:layout_alignParentTop="true" 
    android:layout_alignParentLeft="true" 
    android:layout_alignParentStart="true" /> 


</RelativeLayout> 

理由:あなたが直接ViewであなたのTextViewに結合されています。

これがうまくいくと思います。

+0

ありがとうございます。それは今働いている。 – Dhaval

+0

@Dhaval、お世話になりました。 –

関連する問題