আমার একটি চিত্র ভিউ আছে এবং আমি এটিতে একটি সাধারণ স্কেল অ্যানিমেশন করি। খুব স্ট্যান্ডার্ড কোড।
আমার স্কেল_আপ.এক্সএমএল:
<set xmlns:android="http://schemas.android.com/apk/res/android">
<scale android:fromXScale="1"
android:fromYScale="1"
android:toXScale="1.2"
android:toYScale="1.2"
android:duration="175"/>
</set>
আমার অ্যানিমেশন কোড:
Animation a = AnimationUtils.loadAnimation(this, R.anim.scale_up);
((ImageView) findViewById(R.id.circle_image)).startAnimation(a);
সমস্যাটি:
যখন চিত্রটি স্কেল করে এটি কেন্দ্র থেকে স্কেল করে না তবে উপরের বাম কোণ থেকে। অন্য কথায়, চিত্রটির স্কেলড ভেরিয়ানের কেন্দ্রের মতো একই বিন্দু নেই, তবে এটির উপরের-বাম দিকের একই বিন্দু রয়েছে। এখানে আমি বোঝাতে চাইছি একটি লিঙ্ক এখানে। প্রথম চিত্রটি হ'ল অ্যানিমেশনটি কীভাবে স্কেল করে এবং দ্বিতীয় চিত্রটি কীভাবে আমি এটি স্কেল করতে চাই। এটি কেন্দ্রের পয়েন্ট একই রাখে। আমি ইমেজে গ্রাভিটি স্থাপনের চেষ্টা করেছি, ধারকটিতে, বাম বা ডানদিকে প্রান্তিককরণ, এটি সর্বদা একই স্কেল করে। আমি মূল স্ক্রিনের জন্য রিলেটিভলআউট ব্যবহার করছি এবং ইমেজভিউ অন্য একটি রিলেটিভলআউটে অবস্থিত, তবে আমি অন্যান্য বিন্যাস চেষ্টা করেছি, কোনও পরিবর্তন হয়নি।
pivotX
এবংpivotY
অর্ধেক সেট করা উচিতviewportWidth
এবংviewportHeight
সঠিক হতে হবে।