[英]How to enlarge an Image in grid View when selected
I want to enlarge my Image when it is selected. 选择图像后,我想放大它。 My problem is Image is selected, but not enlargened. 我的问题是选择了图像,但没有放大。
I have tried many things like enlarge imageView in XML but no work. 我尝试了很多事情,例如以XML放大imageView,但是没有任何效果。
You will see below the code for image selection: 您将在下面的代码选择图像中看到:
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder holder;
if (convertView == null) {
convertView = mInflater.inflate(R.layout.grid_row, null);
holder = new ViewHolder();
holder.mImageView = (ImageView) convertView.findViewById(R.id.image);
holder.mImageView.setOnClickListener(this);
holder.mImageNone = (ImageView) convertView.findViewById(R.id.image_none);
holder.mImageNone.setOnClickListener(this);
holder.mImageViewSelected = (ImageView) convertView.findViewById(R.id.image_selected);
holder.mImageViewSelected.setOnClickListener(this);
convertView.setTag(holder);
} else {
holder = (ViewHolder) convertView.getTag();
}
GridViewData data = mImagePath.get(position);
holder.mImageNone.setTag(data);
holder.mImageViewSelected.setTag(data);
if (data.getSelected()) {
holder.mImageViewSelected.setVisibility(View.VISIBLE);
} else {
holder.mImageViewSelected.setVisibility(View.INVISIBLE);
}
and the next part of this is 接下来的部分是
public void onClick(View v) {
switch (v.getId()) {
case R.id.image: {
break;
}
case R.id.image_none: {
GridViewData data = (GridViewData) v.getTag();
//
if (data.getSelected()) {
data.setSelcted(false);
} else {
data.setSelcted(true);
}
notifyDataSetChanged();
break;
}
case R.id.image_selected: {
GridViewData data = (GridViewData) v.getTag();
if (data.getSelected()) {
data.setSelcted(false);
} else {
data.setSelcted(true);
}
notifyDataSetChanged();
break;
Add something like this in to your onClickListener: 在您的onClickListener中添加以下内容:
imageView.animate().scaleX(1.1).scaleY(1.1f)
// it means when you select this image it will be enlarged. //这表示当您选择此图片时,它将被放大。 Replace imageview with your Imageview name 用您的Imageview名称替换imageview
and in ViewHolder view bind method don't forger to add 'if, else' check for checking if it is selected and setting scale for selected items. 在ViewHolder视图绑定方法中,不要伪造添加“ if,else”来检查是否选中了它,并设置所选项目的比例。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.