Я перемещаю объект через onTouch в android, но объект выходит из экрана, как я могу его остановить?Остановить перемещение объекта от выхода из экрана в android
case MotionEvent.ACTION_MOVE:
DisplayMetrics dm = getResources().getDisplayMetrics();
final int parentHeight = dm.heightPixels;
final int parentWidth = dm.widthPixels;
RelativeLayout.LayoutParams layoutParams = (RelativeLayout.LayoutParams) this
.getLayoutParams();
layoutParams.leftMargin = Math.min(Math.max(0, (x - m_X)),
parentWidth - this.getWidth());
layoutParams.topMargin = Math.min(Math.max(0, (y - m_Y)),
parentHeight - this.getHeight());
layoutParams.rightMargin = Math.min(Math.max(0, (x - m_W)),
parentWidth - this.getWidth());
layoutParams.bottomMargin = Math.min(Math.max(0, (y - m_Z)),
parentHeight + this.getHeight());
this.setLayoutParams(layoutParams);
contructors являются:
public FTFLImageView(Context context) {
super(context);
init();
}
public FTFLImageView(Context context, AttributeSet attrs) {
super(context, attrs, 0);
}
private void init() {
// TODO Auto-generated method stub
RelativeLayout.LayoutParams layoutParams = new RelativeLayout.LayoutParams(
150, 150);
this.setImageResource(R.drawable.ic_launcher);
this.setLayoutParams(layoutParams);
}
и класс начинается как:
public class FTFLImageView extends ImageView implements OnTouchListener{
Что должно быть в методе getResources()? – najmulhasan
Каждый вид в Android имеет метод 'getResources()' по умолчанию .... Является ли ваш код внутри класса View? – sled
, пожалуйста, продлите код, отредактировав свой вопрос. У вашего класса уже есть метод 'getResources()', так как это представление. – sled