2

最初の要素だけが完全なアルファで表示されることを除いて、完全に機能するギャラリーがあります。

ギャラリーのスタイルを style="android:galleryItemBackground" に設定し、android:unselectedAlpha="0.75" も設定しています。これは機能し、最初の要素は透明度なしで表示され、2 番目の要素は少し薄くなっているように見えます。

問題は、ギャラリーをスクロールしてもアイテムが消えないことです。それらが選択されたアイテムであっても、それらはすべてアルファ= 0.75です。アイテムには OnItemClickListener が設定されており、このリスナーは正常に動作します。

これを機能させる方法についての答えが見つからないので、ここで質問したいと思いました。

[編集] OnItemSelectedListener を設定し、アダプタの getView で position = selectedPosition の場合、ビューのアルファを手動で 1 に設定しようとしました。運がない。

4

1 に答える 1

1

すべての子ビューに背景を追加する

これは一例のコードです

@Override
public View getView(int position, View convertView, ViewGroup parent) {
    View view = null;

    if (convertView == null) {
        view = mInflater.inflate(R.layout.some_layout, parent, false);
    } else {
        view = convertView;
    }

    // have to set background to make selection alpha works
    view.setBackgroundColor(0x22ffffff);


    return view;
}

それが役に立てば幸い

于 2012-07-25T00:03:37.533 に答える