Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/354.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Android:如何在ViewPager中设置文本动画_Java_Android_Animation_Android Viewpager_Fragment - Fatal编程技术网

Java Android:如何在ViewPager中设置文本动画

Java Android:如何在ViewPager中设置文本动画,java,android,animation,android-viewpager,fragment,Java,Android,Animation,Android Viewpager,Fragment,我想在用户滑动到下一个屏幕时开始淡入动画,但我无法让它正常工作。问题是动画在第一个和第二个屏幕、第三个和第四个屏幕上同时开始 这是我的页面片段 @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { Animation in; Animation out;

我想在用户滑动到下一个屏幕时开始淡入动画,但我无法让它正常工作。问题是动画在第一个和第二个屏幕、第三个和第四个屏幕上同时开始

这是我的页面片段

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
                         Bundle savedInstanceState) {

    Animation in;
    Animation out;

    in = new AlphaAnimation(0.0f, 1.0f);
    in.setDuration(2000);

    out = new AlphaAnimation(1.0f, 0.0f);
    out.setDuration(2000);

    // Inflate the layout for this fragment
    View view = inflater.inflate(R.layout.page_fragment_layout,container,false);
    textView = (TextView)view.findViewById(R.id.textView);
    Bundle bundle = getArguments();
    String message = bundle.getString("count");
    textView.setText(message);
    textView.setAnimation(in);
    return view;
}}
SwipeAdapter

public class SwipeAdapter extends FragmentStatePagerAdapter{
public SwipeAdapter(FragmentManager fm) {
    super(fm);
}

@Override
public Fragment getItem(int i) {
    String[] historia = {"1", "2", "3", "4", "5"};
    Fragment fragment = new PageFragment();
    Bundle bundle = new Bundle();
    bundle.putString("count", historia[i]);
    fragment.setArguments(bundle);
    return fragment;
}

@Override
public int getCount() {
    return 5;
}}
主要活动

public class MainActivity extends FragmentActivity {
ViewPager viewPager;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);


    viewPager = (ViewPager) findViewById(R.id.view_pager);
    SwipeAdapter swipeAdapter = new SwipeAdapter(getSupportFragmentManager());
    viewPager.setAdapter(swipeAdapter);

}}

谢谢你的回答!:)

用您的
swipeAdapter
注册
ViewPager.OnPageChangeListener
(如
swipeAdapter.addOnPageChangeListener()
)。然后,您可以将动画内容移动到
public void on pageselected(int位置)
。不要忘记在
onResume/onPause
中调用那些添加/删除侦听器