2017-08-11 5 views
-1

android Gridviewに関する問題があります。私はgetview関数を使ってプログラムでImageviewを使ってGridviewを作成しましたが、どうやってイメージビューのうちの1つだけしか表示されないように設定できますか?Invisible imageviewでプログラムでGridViewを作成する

私に例を挙げてください。

答えて

0

私はアンドロイドの環境を持っていないので、次のコードを試しませんでしたが、これは正しく動作すると思います。 私はここAndroid developers

public View getView(int position, View convertView, ViewGroup parent) { 
     ImageView imageView; 
     if (convertView == null) { 
      // if it's not recycled, initialize some attributes 
      imageView = new ImageView(mContext); 
      imageView.setLayoutParams(new GridView.LayoutParams(85, 85)); 
      imageView.setScaleType(ImageView.ScaleType.CENTER_CROP); 
      imageView.setPadding(8, 8, 8, 8); 
     } else { 
      imageView = (ImageView) convertView; 
     } 

     imageView.setImageResource(mThumbIds[position]); 

     // I edit here, you can choose visible or not in here 

     if (isVisibleImage(position) { 
      imageView.setVisibility(View.VISIBLE); 
     } else { 
      imageView.setVisibility(View.INVISIBLE); 
     } 
     return imageView; 
    } 

    private boolean isVisibleImage(int position) { 
     return position == 0; 
    } 

    // references to our images 
    private Integer[] mThumbIds = { 
     // resources 
    }; 
+0

おかげであなたの答えのためのコードをコピーしました。しかし、それはイメージビューのすべてを不可視に設定するようです。 mThumBIds [0]が不可視に設定され、mThumBIds [1]が表示されるなど、1つの画像ビューのみを設定したい場合。 –

+0

はい、そのコードはあなたにとっては十分ではありませんが、私はあなたがif文が必要かと思います。私は答えを更新しました。 –

関連する問題