我的第一个app

来源:互联网 发布:ipad登陆淘宝卖家中心 编辑:程序博客网 时间:2024/04/27 23:15
public class PiecetActivity extends FragmentActivity implements View.OnClickListener,ViewPager.OnPageChangeListener,View.OnTouchListener{    private TextView spring, summer, autumn, winter;    private ImageView image;    private int imageWigth;    private int flag;    private ViewPager pager;    private int idTab=R.id.text1;    private int[]textId={R.id.text1,R.id.text2,R.id.text3,R.id.text4};    private List<Fragment> list=new ArrayList<>();    private ImageView drift;    private RelativeLayout relativeLayout;    private int x;    private int y;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_piecet);        intface();        InitImageView();        pager.addOnPageChangeListener(this);        pager.setOffscreenPageLimit(2);        pager.setAdapter(new FragmentStatePagerAdapter(getSupportFragmentManager()) {            @Override            public Fragment getItem(int position) {                return list.get(position);            }            @Override            public int getCount() {                return 4;            }        });    }    private void intface() {        setContentView(R.layout.activity_piecet);        list.add(new SpringFragment());        list.add(new SpringFragment());        list.add(new SpringFragment());        list.add(new SpringFragment());        list.add(new AutumnFragment());        list.add(new WinterFragment());        list.add(new FurFragment());        spring = (TextView) findViewById(R.id.text1);        summer = (TextView) findViewById(R.id.text2);        autumn = (TextView) findViewById(R.id.text3);        winter = (TextView) findViewById(R.id.text4);        image = (ImageView) findViewById(R.id.cursor);        pager= (ViewPager) findViewById(R.id.verigrid);        drift=(ImageView)findViewById(R.id.drift);        relativeLayout=(RelativeLayout)findViewById(R.id.relativeLayout);        spring.setOnClickListener(this);        summer.setOnClickListener(this);        autumn.setOnClickListener(this);        winter.setOnClickListener(this);        drift.setOnTouchListener(this);    }    private void InitImageView() {        WindowManager wm = this.getWindowManager();        imageWigth= wm.getDefaultDisplay().getWidth()/4;    }    @Override    public void onClick(View v) {        if(idTab!=0){          ((TextView)findViewById(idTab)).setTextColor(getResources().getColor(R.color.typeface1));        }        idTab=v.getId();        ((TextView)findViewById(idTab)).setTextColor(getResources().getColor(R.color.essentialcolour));        switch (idTab) {            case R.id.text1:                pager.setCurrentItem(0,false);                ObjectAnimator.ofFloat(image, "TranslationX", 0)                        .setDuration(800).start();                break;            case R.id.text2:                pager.setCurrentItem(1,false);                ObjectAnimator.ofFloat(image, "TranslationX", imageWigth)                        .setDuration(800).start();                break;            case R.id.text3:                pager.setCurrentItem(2,false);                ObjectAnimator.ofFloat(image, "TranslationX", imageWigth*2)                        .setDuration(800).start();                break;            case R.id.text4:                pager.setCurrentItem(3,false);                ObjectAnimator.ofFloat(image, "TranslationX", imageWigth * 3)                        .setDuration(800).start();                break;        }    }    @Override    public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {    }    @Override    public void onPageSelected(int position) {        if(idTab!=0){            ((TextView)findViewById(idTab)).setTextColor(getResources().getColor(R.color.typeface1));        }        idTab=textId[position];        ((TextView)findViewById(idTab)).setTextColor(getResources().getColor(R.color.essentialcolour));        switch (position) {            case 0:                ObjectAnimator.ofFloat(image, "TranslationX", 0)                        .setDuration(1000).start();                break;            case 1:                ObjectAnimator.ofFloat(image, "TranslationX", imageWigth)                        .setDuration(1000).start();                break;            case 2:                ObjectAnimator.ofFloat(image, "TranslationX", imageWigth*2)                        .setDuration(1000).start();                break;            case 3:                ObjectAnimator.ofFloat(image, "TranslationX", imageWigth*3)                        .setDuration(1000).start();                break;        }    }    @Override    public void onPageScrollStateChanged(int state) {    }    @Override    public boolean onTouch(View view, MotionEvent event) {        final int X = (int) event.getRawX();        final int Y = (int) event.getRawY();        switch (event.getAction() & MotionEvent.ACTION_MASK) {            case MotionEvent.ACTION_DOWN:                RelativeLayout.LayoutParams lParams = (RelativeLayout.LayoutParams) view                        .getLayoutParams();                x = X - lParams.leftMargin;                y = Y - lParams.topMargin;                break;            case MotionEvent.ACTION_UP:                break;            case MotionEvent.ACTION_POINTER_DOWN:                break;            case MotionEvent.ACTION_POINTER_UP:                break;            case MotionEvent.ACTION_MOVE:                RelativeLayout.LayoutParams layoutParams = (RelativeLayout.LayoutParams) view                        .getLayoutParams();                layoutParams.leftMargin = X - x;                layoutParams.topMargin = Y - y;                layoutParams.rightMargin = -250;                layoutParams.bottomMargin = -250;                view.setLayoutParams(layoutParams);                break;        }        relativeLayout.invalidate();        return true;    }    @Override    public void onBackPressed() {        Intent intent=new Intent(this,UserInterface.class);        startActivity(intent);        this.finish();    }

}

这个页面的代码

0 0
原创粉丝点击