android 3D gallery 并 判断当前选中项
16lz
2022-01-27
阅读更多
import android.content.Context;import android.graphics.Camera;import android.graphics.Matrix;import android.os.AsyncTask;import android.util.AttributeSet;import android.view.MotionEvent;import android.view.View;import android.view.animation.Transformation;import android.widget.AdapterView;import android.widget.Gallery;import android.widget.ImageView;import com.hk.shop.comm.Comm;/** * 用在首页产品展示模块的gallery
* 1、这是一个3d的gallery
* 2、能自动判断当前选中的图片,并实现回调 * * @author yizhe * @date 2012-6-19 */public class HKGallery4Module extends Gallery {Context context;// 以下属性用于处理3dprivate Camera camera = new Camera();// 相机类private int maxRotationAngle = 60;// 最大转动角度private int maxZoom = 60;// z方向的移动至,相当于缩放private int coveflowCenter;// 半径值private int height;// 以下属性用于处理获取当前选中的项private int currentPosition;private int lastPosition;public int getLastPosition() {return lastPosition;}public void setLastPosition(int lastPosition) {this.lastPosition = lastPosition;}boolean isItemSelectedChange;// 选中的项是否发生了变化public HKGallery4Module(Context context, AttributeSet attrs, int defStyle) {super(context, attrs, defStyle);this.context = context;this.setStaticTransformationsEnabled(true);ini();}public HKGallery4Module(Context context, AttributeSet attrs) {super(context, attrs);this.context = context;this.setStaticTransformationsEnabled(true);ini();}public HKGallery4Module(Context context) {super(context);this.context = context;this.setStaticTransformationsEnabled(true);ini();}void ini() {setOnItemSelectedListener(new OnItemSelectedListener() {@Overridepublic void onItemSelected(AdapterView<?> parent, View view,int position, long id) {setCurrentPosition(position);isItemSelectedChange = true;}@Overridepublic void onNothingSelected(AdapterView<?> parent) {}});}// ------------------------以下用户处理获取当前选中项------------------------//@Overridepublic boolean onTouchEvent(MotionEvent event) {if (event.getAction() == MotionEvent.ACTION_UP) {JudgeTask task = new JudgeTask();task.execute(); // 手离开开始执行,判断gallery是否停止}return super.onTouchEvent(event);}// ------------------判断停止----------------//class JudgeTask extends AsyncTask
更多相关文章
- android 3D gallery 并 判断当前选中项
- android之Matrix
- Android(安卓)通过HTTP POST 上传图片文件
- android 在SDCard获取图片
- android API Demo之使用ViewFlipper制作轮播广告
- 临时
- android 仿淘宝的加载刷新效果
- android代码实现按钮自旋转
- 后续:优化