2011-05-01 44 views
0

我有包括ViewFlipper的XML文件,並要顯示在3秒後的下一個視圖(在viewflipper),但它在此週期之後不顯示: XML:問題的ViewFlipper

<?xml version="1.0" encoding="UTF-8"?> 
<ViewFlipper xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/flipper" android:layout_width="fill_parent" 
    android:layout_height="fill_parent"> 
    <RelativeLayout android:layout_width="fill_parent" 
     android:layout_height="fill_parent"> 
     <TextView android:id="@+id/sipLabel" android:textSize="20sp" 
      android:layout_width="fill_parent" android:layout_height="wrap_content" /> 
     <ImageView android:id="@+id/disconnected" android:src="@drawable/disconnected" 
      android:layout_below="@id/sipLabel" android:layout_width="wrap_content" 
      android:layout_height="wrap_content" android:layout_weight="0.35" 
      android:gravity="center" android:visibility="visible" /> 
    </RelativeLayout> 
    <RelativeLayout android:layout_width="fill_parent" 
     android:layout_height="fill_parent"> 
     <TextView android:id="@+id/sipLabel" android:textSize="20sp" 
      android:layout_width="fill_parent" android:layout_height="wrap_content" /> 
     <ImageView android:id="@+id/connected" android:src="@drawable/connected" 
      android:layout_below="@id/sipLabel" android:layout_width="wrap_content" 
      android:layout_height="wrap_content" android:layout_weight="0.35" 
      android:gravity="center" android:visibility="visible" /> 
    </RelativeLayout> 
</ViewFlipper> 

Java代碼:

public void onRegistrationDone(String localProfileUri, long expiryTime) 
{ 
    updateStatus("Registered to server."); 
    Log.d("SUCCEED", "Registration DONE"); 

    final ViewFlipper flipper = (ViewFlipper) findViewById(R.id.flipper); 
    flipper.postDelayed(new Runnable() 
    { 
     public void run() 
     { 
      flipper.showNext(); 
     } 
    }, 3000); 
} 

問題是什麼?爲什麼下一個視圖不顯示?

謝謝你的幫助。

+0

啊好吧我有@ drawable /連接在兩個視圖!然而,textview不顯示在第二個視圖中,我只是有圖像!任何想法 ?謝謝。 – androniennn 2011-05-01 13:34:37

+0

你確定,'onRegistrationDone'正在UI線程中運行嗎?如果是這樣,除非'updateStatus'方法不會引發異常,否則這段代碼工作正常! – rekaszeru 2011-05-01 15:04:36

回答

0

試試這個insted的運行過程中出現一個線程:

viewFlipper.setFlipInterval(FLIP_INTERVAL); 
viewFlipper.startFlipping(); 

您可以在milisecond設置FLIP_INTERVAL。