У меня есть изображения, которые должны появляться в одном месте, по которому пользователь нажимает, и перемещаться в другое место, по которому щелкает пользователь.Я думаю, что проблема, с которой я сталкиваюсь, заключается в том, как изначально разместить ImageView в заданном абсолютном X, Y (мой корневой макет основного вида - это LinearLayout по умолчанию).Это то, что я сейчас пытаюсь, анимация запускается, но не отображается (после 1000 мс действительно вызывается конечная функция).
ImageView iv = new ImageView(mainActivity);
String imgname = "drawable/animImg";
int imgId = act.getResources().getIdentifier(imgname, "drawable", act.getPackageName());
iv.setImageDrawable(act.getResources().getDrawable(imgId));
/*didn't seem to help
LinearLayout.LayoutParams lp = new LinearLayout.LayoutParams(
LinearLayout.LayoutParams.FILL_PARENT,
LinearLayout.LayoutParams.FILL_PARENT);
((ViewGroup)mainActivity.findViewById(R.id.LinearLayout)).addView(iv,lp);
*/
int[] srcxy = new int[2];
src.getLocationInWindow(srcxy);
int[] destxy = new int[2];
dest.getLocationInWindow(destxy);
TranslateAnimation translateAnimation = new TranslateAnimation( Animation.ABSOLUTE, srcxy[0], Animation.ABSOLUTE, destxy[0], Animation.ABSOLUTE, srcxy[1], Animation.ABSOLUTE, destxy[1]);
translateAnimation.setDuration(1000);
translateAnimation.setInterpolator(new AccelerateInterpolator());
translateAnimation.setAnimationListener( new MyAnimationListenener( c, src, dest, this ) );
iv.setVisibility(View.VISIBLE);
iv.startAnimation(translateAnimation);
Так есть ли способ указать мне, что я хочу сначалаПоместите ImageView в srcxy [0], srcxy [1], прежде чем анимировать?Или я даже поступаю правильно?