Android 如何为ViewPager中的每个选项卡图像应用属性动画

Android 如何为ViewPager中的每个选项卡图像应用属性动画,android,Android,我正在使用可绘制图像的滑动标签: 我想在显示选项卡视图时(不是在幻灯片上)使用属性动画为每个选项卡图像设置动画 类似这样的内容(但这不起作用,因为属性动画不适用于可绘制对象): 我怎样才能做到这一点?谢谢。好的,如果有人需要,我找到了一个简单的解决方案。 在SlidengTableOut java类中: private void populateTabStrip() { final PagerAdapter adapter = mViewPager.getAdapter();

我正在使用可绘制图像的滑动标签:

我想在显示选项卡视图时(不是在幻灯片上)使用属性动画为每个选项卡图像设置动画 类似这样的内容(但这不起作用,因为属性动画不适用于可绘制对象):


我怎样才能做到这一点?谢谢。

好的,如果有人需要,我找到了一个简单的解决方案。 在SlidengTableOut java类中:

 private void populateTabStrip() {

    final PagerAdapter adapter = mViewPager.getAdapter();
    final View.OnClickListener tabClickListener = new TabClickListener();


    int delay;
    for (int i = 0; i < adapter.getCount(); i++) {

        View tabView = null;
        TextView tabTitleView = null;

        if (mTabViewLayoutId != 0) {
            // If there is a custom tab view layout id set, try and inflate it
            tabView = LayoutInflater.from(getContext()).inflate(mTabViewLayoutId, mTabStrip,
                    false);
            tabTitleView = (TextView) tabView.findViewById(mTabViewTextViewId);
           // adapter.getPageTitle(0)

        }

        if (tabView == null) {
            tabView = createDefaultTabView(getContext());
        }

        if (tabTitleView == null && TextView.class.isInstance(tabView)) {
            tabTitleView = (TextView) tabView;
        }

        if (mDistributeEvenly) {
            LinearLayout.LayoutParams lp = (LinearLayout.LayoutParams) tabView.getLayoutParams();
            lp.width = 0;
            lp.weight = 1;
        }

        tabTitleView.setText(adapter.getPageTitle(i));
        tabView.setOnClickListener(tabClickListener);
        String desc = mContentDescriptions.get(i, null);
        if (desc != null) {
            tabView.setContentDescription(desc);
        }

        mTabStrip.addView(tabView);
        if (i == mViewPager.getCurrentItem()) {
            tabView.setSelected(true);

        }
        tabTitleView.setTextColor(getResources().getColorStateList(R.color.selectortab));
        //tabTitleView.setBackgroundColor(getResources().getColorStateList(R.color.selectortab));
        tabTitleView.setTextSize(14);

        delay=(i*80)+750;

        mTabStrip.getChildAt(i).setScaleY(0f);
        mTabStrip.getChildAt(i).setScaleX(0f);
        mTabStrip.getChildAt(i).animate()
                .setStartDelay(delay)
                .setInterpolator(new FastOutSlowInInterpolator())
                .setDuration(300)
                .scaleY(1f)
                .scaleX(1f);
    }

}
private void populateTabStrip(){
final PagerAdapter adapter=mviewpage.getAdapter();
final View.OnClickListener选项卡ClickListener=新选项卡ClickListener();
整数延迟;
对于(inti=0;i
然后使用ObjectAnimator/ValueAnimator
if(position==1)
        {
            imageTabs.animate().setDuration(300).setStartDelay(100).translate...
        }
        if(position==2)
        {
            imageTabs.animate().setDuration(300).setStartDelay(200).translate...
        }
 private void populateTabStrip() {

    final PagerAdapter adapter = mViewPager.getAdapter();
    final View.OnClickListener tabClickListener = new TabClickListener();


    int delay;
    for (int i = 0; i < adapter.getCount(); i++) {

        View tabView = null;
        TextView tabTitleView = null;

        if (mTabViewLayoutId != 0) {
            // If there is a custom tab view layout id set, try and inflate it
            tabView = LayoutInflater.from(getContext()).inflate(mTabViewLayoutId, mTabStrip,
                    false);
            tabTitleView = (TextView) tabView.findViewById(mTabViewTextViewId);
           // adapter.getPageTitle(0)

        }

        if (tabView == null) {
            tabView = createDefaultTabView(getContext());
        }

        if (tabTitleView == null && TextView.class.isInstance(tabView)) {
            tabTitleView = (TextView) tabView;
        }

        if (mDistributeEvenly) {
            LinearLayout.LayoutParams lp = (LinearLayout.LayoutParams) tabView.getLayoutParams();
            lp.width = 0;
            lp.weight = 1;
        }

        tabTitleView.setText(adapter.getPageTitle(i));
        tabView.setOnClickListener(tabClickListener);
        String desc = mContentDescriptions.get(i, null);
        if (desc != null) {
            tabView.setContentDescription(desc);
        }

        mTabStrip.addView(tabView);
        if (i == mViewPager.getCurrentItem()) {
            tabView.setSelected(true);

        }
        tabTitleView.setTextColor(getResources().getColorStateList(R.color.selectortab));
        //tabTitleView.setBackgroundColor(getResources().getColorStateList(R.color.selectortab));
        tabTitleView.setTextSize(14);

        delay=(i*80)+750;

        mTabStrip.getChildAt(i).setScaleY(0f);
        mTabStrip.getChildAt(i).setScaleX(0f);
        mTabStrip.getChildAt(i).animate()
                .setStartDelay(delay)
                .setInterpolator(new FastOutSlowInInterpolator())
                .setDuration(300)
                .scaleY(1f)
                .scaleX(1f);
    }

}