2010-06-23 2 views
1

J'utilise la galerie comme ci-dessousgalerie Android NextFocus ne fonctionne pas

<Gallery android:nextFocusUp="@+id/zoom_out" 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/icon_gallery_plate" android:layout_width="fill_parent" 
    android:layout_height="wrap_content" android:spacing="10dip" 
    android:background="@drawable/browse_slider_bar" 
    android:unselectedAlpha="0.5" android:layout_alignBottom="@+id/layoutZoom" 
    /> 

Le problème est que je nextFocusup effectuer un zoom arrière défini quand je presse en touche alors que sur la galerie, il ne se concentre pas pour effectuer un zoom arrière.

Répondre

1

solution trouvée ajouter l'identifiant nextfocusup dans la méthode getview d'adatper.

@Override 
    public View getView(int position, View convertView, ViewGroup parent) { 
     /* calculationg position */ 
     ImageView i = new ImageView(mContext); 
     i.setScaleType(ImageView.ScaleType.FIT_CENTER); 
     BrowseMapCategoryRow catRow = getItem(position); 
     /* Replacing with selected image */ 
     i.setImageResource(catRow.getImageSource()); 
     i.setNextFocusUpId(R.id.zoom_out); // setting manullay 
     return i; 
    } 
1

Dans « nextFocusUp », vous devez mettre un id qui existe déjà, le + ajoute un nouvel identifiant: donc quand vous créez le widget qui gagnera la mise au point, vous devez éliminer le +, donc l'id serait android: id = "@ id/zoom_out"

Questions connexes