Как установить setAlpha() для одного элемента в GridView?

Можно ли установить один элемент в GridView как прозрачный?

Я получил GridView с помощью ImageAdapter и хочу установить элемент по центру без прозрачности, а остальные с помощью setAlpha().

gridView.setOnScrollListener(new AbsListView.OnScrollListener() {
    @Override
    public void onScrollStateChanged(AbsListView view, int scrollState) {

    }

    @Override
    public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) {

         Log.v("firstVisibleItem", firstVisibleItem+"");
         Log.v("visibleItemCount", visibleItemCount+"");
         Log.v("totalItemCount", totalItemCount+"");                            

    }
}

и это должно быть сделано в OnScrollListener.

РЕДАКТИРОВАТЬ:

Это мой getView в классе ImageAdapter

public View getView(int position, View convertView, ViewGroup parent) {
    ImageView imageView;
    if (convertView == null) { 
        imageView = new ImageView(mContext);
        imageView.setLabelFor(position);
        imageView.setLayoutParams(new GridView.LayoutParams(100,100));
        imageView.setScaleType(ImageView.ScaleType.CENTER_CROP);
        imageView.setPadding(8, 8, 8, 8); //left, top, right, bottom
    } else {
        imageView = (ImageView) convertView;
    }

    imageView.setImageResource(mThumbIds[position]);

    return imageView;
}

    public ArrayList<View> getListView() {
    return listView;
}

и я хочу сохранить imageView в массиве и передать его моей основной деятельности. Какие-либо предложения?

1 ответ

Решение

Я, вероятно, подхожу к этому так:

  1. Сохраняйте ссылку на каждое представление, накачанное в моем адаптере, в каком-то массиве.

  2. Управляет тем, какой вид (какой индекс в этом массиве) находится в центре в определенный момент (на основе высоты, ширины, количества столбцов, количества строк)

  3. Установите правильную альфа для всех представлений в массиве, кроме представления, идентифицированного как то, которое находится в центре (шаг 2).

Другие вопросы по тегам