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);
}
}