0

だから、いくつかのフラグを表示する GridView を取得しました。各 GridView セルは、ImageView と TextView で構成されます。開始時に ImageView のみが表示されます。GridView の位置 1 と 240 が読み込まれると、TextView が表示されるはずです。

    @Override
public View getView(int position, View convertView, ViewGroup parent) {
    ViewHolder mVHolder;

    if (convertView == null) {
        convertView = LayoutInflater.from(mContext).inflate(R.layout.grid_images, parent, false);
        mVHolder = new ViewHolder();
        mVHolder.mImageView = (ImageView) convertView.findViewById(R.id.gridview_img);
        mVHolder.mTextView = (TextView) convertView.findViewById(R.id.textas);
        mVHolder.mTextView.setVisibility(View.INVISIBLE);
        convertView.setTag(mVHolder);
    } else {
        mVHolder = (ViewHolder) convertView.getTag();
    }
    int img = Flagcontainer.flags.get(position).getFlagThumb();


    Picasso.with(mContext).load(img).into(mVHolder.mImageView);

    if (position == 1 || position == 240) {
        mVHolder.mTextView.setVisibility(View.VISIBLE);
    }


    return convertView;
}

class ViewHolder {
    ImageView mImageView;
    TextView mTextView;
}

問題:

GridView の一番下までスクロールすると、セル 240 の TextView が表示されます。上にスクロールすると、1 と 240 以外のセルの TextView が表示されます。

コードの何が問題になっていますか?

問題を視覚化するためにビデオを参照してください

ビデオ: http://www.youtube.com/watch?v=ONLLvS9ISJQ

4

1 に答える 1