22 ŞUBAT 2012, ÇARŞAMBA
android: dokunma, hareket halindeyken bir görünüm (ACTİON_MOVE)
Basit bir kontrol yapmak istiyorum: bir iç Görünüm ile bir konteyner. Ben konteyner dokunmatik ve parmak hareket edersem, benim parmak izleyin görünümü taşımak istiyorum.
Ne tür bir kap (düzen) kullanmalıyım? Nasıl bunu yapmak için?
Bir yüzey, ama basit bir düzen kullanmak için ihtiyacım yok.
CEVAP
22 ŞUBAT 2012, ÇARŞAMBA
Şöyle bir şey:
public class MyActivity extends Activity implements View.OnTouchListener {
TextView _view;
ViewGroup _root;
private int _xDelta;
private int _yDelta;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
_root = (ViewGroup)findViewById(R.id.root);
_view = new TextView(this);
_view.setText("TextView!!!!!!!!");
RelativeLayout.LayoutParams layoutParams = new RelativeLayout.LayoutParams(150, 50);
layoutParams.leftMargin = 50;
layoutParams.topMargin = 50;
layoutParams.bottomMargin = -250;
layoutParams.rightMargin = -250;
_view.setLayoutParams(layoutParams);
_view.setOnTouchListener(this);
_root.addView(_view);
}
public boolean onTouch(View view, MotionEvent event) {
final int X = (int) event.getRawX();
final int Y = (int) event.getRawY();
switch (event.getAction() & MotionEvent.ACTION_MASK) {
case MotionEvent.ACTION_DOWN:
RelativeLayout.LayoutParams lParams = (RelativeLayout.LayoutParams) view.getLayoutParams();
_xDelta = X - lParams.leftMargin;
_yDelta = Y - lParams.topMargin;
break;
case MotionEvent.ACTION_UP:
break;
case MotionEvent.ACTION_POINTER_DOWN:
break;
case MotionEvent.ACTION_POINTER_UP:
break;
case MotionEvent.ACTION_MOVE:
RelativeLayout.LayoutParams layoutParams = (RelativeLayout.LayoutParams) view.getLayoutParams();
layoutParams.leftMargin = X - _xDelta;
layoutParams.topMargin = Y - _yDelta;
layoutParams.rightMargin = -250;
layoutParams.bottomMargin = -250;
view.setLayoutParams(layoutParams);
break;
}
_root.invalidate();
return true;
}}
Sadece RelativeLayout içinde main.xml "@ id/root"
Bunu Paylaş:
Android "bu hiyerarşi görüşlerini...
Kolay bir şekilde Android bir Görünüm ...
Android 1.6: "android.görünüm.Pen...
Çok satırlı Android EditText görünüm s...
Android: Görünüm.KİMLİK çatışmaları ön...