Android控件位置控制
2012-01-29 15:58
330 查看
OnTouchListener onSlider = new OnTouchListener(){ @Override public boolean onTouch(View v, MotionEvent event) { if(sdPos==null){ sdPos = new int[2]; slider.getLocationInWindow(sdPos); trackBottom = slider.getHeight() + sdPos[1]; Display display = getWindowManager().getDefaultDisplay(); sliderWidth = slider.getWidth(); trackRight = display.getWidth() - sdPos[0]; trackLeft = sdPos[0]; lastX = sdPos[0]; com.Logi("sdPos:"+sdPos[0]+","+sdPos[1]+","+trackBottom+","+trackLeft+","+trackRight); } return false; } }; int touchCount = 0; int x,y; void touchMove(){ touchCount++; while(true){ if(touchCount>=2){ touchCount = 0; }else{ break; } if(sdPos==null) break; if(y<sdPos[1]) break; if(y>trackBottom) break; if(x<trackLeft) break; if(x>trackRight) break; com.Logi(""+x+","+y); x = x - sdPos[0]; if(x<24) x = 24; int x0 = trackRight-trackLeft-45; if(x>x0) x = x0; lastX = x + sdPos[0]; slider.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT,x,26)); break; } } boolean startSlide = false; int lastX = 0; @Override public boolean onTouchEvent(MotionEvent event) { switch(event.getAction()){ case MotionEvent.ACTION_DOWN: if(event.getX()<lastX+100) slideTask.Run(10,10); break; case MotionEvent.ACTION_MOVE: x = (int)event.getX(); y = (int)event.getY(); break; case MotionEvent.ACTION_UP: slideTask.Stop(); break; } return super.onTouchEvent(event); } std.ScheduleTask slideTask = new std.ScheduleTask() { @Override void onRun() { touchMove(); } };
相关文章推荐
- Android 通过硬编码对控件显示位置的控制
- android 控制控件的位置和大小
- android 控制控件的位置和大小
- android 开发零起步学习笔记(九):android 控制控件的位置和大小及Layout相关属性
- 关于android 控件位置控制的几个属性
- Android控制控件的位置和控件是否可见
- Android 动态控制控件的位置
- Android 重写ScrollView控件,以至于上下拖动时获取正确的滚动位置
- Android控件跟随手指移动方法补充及在RelativeLayout移动控件控件还原位置问题
- 让系统自动控制控件在控制器视图的位置
- MFC界面控件位置大小控制的EasySize使用说明
- Android动画效果 translate、scale、alpha、rotate 切换Activity动画 控件位置调整
- Android PopupWindow怎么合理控制弹出位置(showAtLocation)
- Android通过崩溃日志中控件id定位崩溃位置的方法
- 动态创建的控件,如何控制相对位置
- Android控件EditText软键盘的调用和控制
- android 动态改变控件位置和大小
- android 初始化时获得控件位置,宽高的属性
- 使用CSS控制Android控件的样式--pixate-freestyle-android
- Android开发实现popupWindow弹出窗口自定义布局与位置控制方法