如何在gridview中实现圆角
How to implement rounded corners in gridview
所以我找到了这个 android how to make gridview item corner round。但我不知道如何将此代码实现到 GridViewAdapter 中的 gridview 中的单个项目。谁能至少告诉我在哪里使用它。我这样试试
networkImageView.setImageResource(R.drawable.grid_backgroud);
但它不起作用。
public GridViewAdapter(Context context, ArrayList<String> images){
//Getting all the values
this.context = context;
this.images = images;
}
public View getView(int position, View convertView, ViewGroup parent) {
//Creating a linear layout
LinearLayout linearLayout = new LinearLayout(context);
linearLayout.setOrientation(LinearLayout.VERTICAL);
//NetworkImageView
NetworkImageView networkImageView = new NetworkImageView(context);
//Initializing ImageLoader
imageLoader = CustomVolleyRequest.getInstance(context).getImageLoader();
imageLoader.get(images.get(position), ImageLoader.getImageListener(networkImageView, R.mipmap.ic_launcher, android.R.drawable.ic_dialog_alert));
//Setting the image url to load
networkImageView.setImageUrl(images.get(position),imageLoader);
//Scaling the imageview
networkImageView.setScaleType(ImageView.ScaleType.CENTER_CROP);
WindowManager wm = (WindowManager) context.getSystemService(Context.WINDOW_SERVICE);
Display display = wm.getDefaultDisplay();
Point size = new Point();
display.getSize(size);
int width = (display.getWidth()/2)-6;
networkImageView.setLayoutParams(new GridView.LayoutParams((int)width,640));
//Adding views to the layout
linearLayout.addView(networkImageView);
//Returnint the layout
return linearLayout;
}
将其设置为您的 LinearLayout 的背景:
linearLayout.setBackground(context.getResources().getDrawable(R.drawable.whatever_you_named_the_file, null);
编辑
使用 CardView 而不是 LinearLayout。它会自动为您提供圆角。
所以我找到了这个 android how to make gridview item corner round。但我不知道如何将此代码实现到 GridViewAdapter 中的 gridview 中的单个项目。谁能至少告诉我在哪里使用它。我这样试试
networkImageView.setImageResource(R.drawable.grid_backgroud);
但它不起作用。
public GridViewAdapter(Context context, ArrayList<String> images){
//Getting all the values
this.context = context;
this.images = images;
}
public View getView(int position, View convertView, ViewGroup parent) {
//Creating a linear layout
LinearLayout linearLayout = new LinearLayout(context);
linearLayout.setOrientation(LinearLayout.VERTICAL);
//NetworkImageView
NetworkImageView networkImageView = new NetworkImageView(context);
//Initializing ImageLoader
imageLoader = CustomVolleyRequest.getInstance(context).getImageLoader();
imageLoader.get(images.get(position), ImageLoader.getImageListener(networkImageView, R.mipmap.ic_launcher, android.R.drawable.ic_dialog_alert));
//Setting the image url to load
networkImageView.setImageUrl(images.get(position),imageLoader);
//Scaling the imageview
networkImageView.setScaleType(ImageView.ScaleType.CENTER_CROP);
WindowManager wm = (WindowManager) context.getSystemService(Context.WINDOW_SERVICE);
Display display = wm.getDefaultDisplay();
Point size = new Point();
display.getSize(size);
int width = (display.getWidth()/2)-6;
networkImageView.setLayoutParams(new GridView.LayoutParams((int)width,640));
//Adding views to the layout
linearLayout.addView(networkImageView);
//Returnint the layout
return linearLayout;
}
将其设置为您的 LinearLayout 的背景:
linearLayout.setBackground(context.getResources().getDrawable(R.drawable.whatever_you_named_the_file, null);
编辑
使用 CardView 而不是 LinearLayout。它会自动为您提供圆角。