2010-06-23 54 views
1

我使用畫廊如下的Android畫廊的nextfocus不工作

<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" 
    /> 

問題是我定義nextFocusup縮小當我按下了鍵,而在畫廊它不注重縮小。

回答

1

找到解決方案在adatper的getview方法中添加nextfocusup id。

@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

在「nextFocusUp」你應該把已存在的ID,在+增加了一個新的ID:所以當你創建一個將獲得焦點的窗口小部件,你應該消除+,所以ID會android:id =「@ id/zoom_out」