gpt4 book ai didi

android - 在 GridView 中旋转图像

转载 作者:行者123 更新时间:2023-11-30 04:13:38 26 4
gpt4 key购买 nike

我正在使用 gridview 的这个例子 http://developer.android.com/resources/tutorials/views/hello-gridview.html只是在一个角落里有更少的图像和一个旋转按钮。我想单击一个图像,然后单击旋转按钮来旋转该图像,但我找不到如何操作。

有人知道吗?

最佳答案

如果您跟踪要旋转的图像,则可以在 getView 中使用 setImageMatrix() 来旋转图像。像这样:

HashMap<Integer, Matrix> mImageTransforms = new HashMap<Integer,Matrix>();
Matrix mIdentityMatrix = new Matrix();

// create a new ImageView for each item referenced by the Adapter
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;
}

Matrix m = mImageTransforms.get(position);
if ( null == m ) {
m = mIdentityMatrix;
}
imageView.setImageMatrix(m);
imageView.setImageResource(mThumbIds[position]);
return imageView;
}

void setImageRotation(int position, int degrees) {
Matrix m = mImageTransforms.remove(position);
if ( degrees != 0 ) {
if ( null == m ) m = new Matrix();
m.setRotate(degrees);
mImageTransforms.put(position, m);
}
notifyDataSetChanged();
}

有一点需要注意。在触摸模式下,列表和网格本身没有选择,但是可以检查它们。获取 GridView 以显示选中状态有点棘手,也就是说 Honeypad Tutorial展示了如何在 ListView 中使用选中的 View ,这可能会有帮助。

关于android - 在 GridView 中旋转图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10420992/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com