2011-02-03 47 views
1

我已經編寫代碼,通過選擇列表中的特定項目來轉到下一個視圖。 列表中包含很多項目,我想在不同的項目選擇上顯示不同的文本視圖。 我有一個關於下面的代碼問題..如何使用視圖鰭狀肢到列表視圖中的特定項目的下一個視圖

listview.setOnItemClickListener(new OnItemClickListener(){ 
     @Override 
    public void onItemClick(AdapterView<?> a, View v, int position, long id) { 

    temp=a.getItemAtPosition(position).toString();  

     if (temp=="Aries") 
     { 
      ViewFlipper viewflipper= (ViewFlipper) findViewById(R.id.viewflipper); 
       TextView text = (TextView) v.findViewById(R.id.item1); 
       viewflipper.showNext(); 

     } 
     if (temp=="Taurus") 
     { 
      ViewFlipper viewflipper= (ViewFlipper) findViewById(R.id.viewflipper); 
      viewflipper.showNext(); 
      TextView text = (TextView) v.findViewById(R.id.item2); 

     } 

XML是..

<AbsoluteLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:orientation="vertical" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
> 

<ViewFlipper android:id="@+id/viewflipper" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    > 
    <ListView android:id="@+id/listview" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
    /> 
    <TextView 
     android:id="@+id/item1" 
     android:background="@drawable/aries28" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:text="This is for me" 
    /> 

    <TextView 
     android:id="@+id/item2" 
     android:background="@drawable/t28" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:text="This is for you" 
    /> 

</ViewFlipper> 
</AbsoluteLayout> 

然而,當我運行此代碼,它顯示在這兩個項目的下一個取景TextView的,即它顯示了同樣的東西(「這是給我的」)。我怎麼解決這個問題?

在此先感謝..

回答

1

那是因爲你沒有跳到這是列表中的TextView下一個視圖「這是我」。如果你使用showNext()方法,flipper會一直向你顯示在xml佈局中聲明的下一個視圖,所以,用viewflipper.setDisplayedChild(whichChild)調用第二個視圖。

歡呼聲

相關問題