android源码,仿大众点评下拉动画

移动开发
仿大众点评下拉滑动动画效果,随下拉滑动。

源码简介:仿大众点评下拉滑动动画效果,随下拉滑动。

源码效果:

源码片段:

  1. package com.eoe.commenttogelter.ui; 
  2.   
  3. import java.util.ArrayList; 
  4. import java.util.List; 
  5.   
  6. import android.annotation.SuppressLint; 
  7. import android.os.Bundle; 
  8. import android.support.v4.app.Fragment; 
  9. import android.support.v4.app.FragmentActivity; 
  10. import android.support.v4.app.FragmentManager; 
  11. import android.support.v4.app.FragmentPagerAdapter; 
  12. import android.view.LayoutInflater; 
  13. import android.view.View; 
  14. import android.widget.ImageView; 
  15. import android.widget.TabHost; 
  16. import android.widget.TabHost.OnTabChangeListener; 
  17. import android.widget.TextView; 
  18.   
  19. import com.eoe.commenttogelter.R; 
  20.   
  21. public class MainActivity extends FragmentActivity { 
  22.     private TabHost mTabHost; 
  23.     private NoSlideViewPager mViewPager; 
  24.     private List<fragment> mFragments = new ArrayList<fragment>(); 
  25.   
  26.     @Override 
  27.     protected void onCreate(Bundle savedInstanceState) { 
  28.         super.onCreate(savedInstanceState); 
  29.         setContentView(R.layout.activity_main); 
  30.   
  31.         mFragments.add(new MainFragment()); 
  32.         mFragments.add(new PurchaseFragment()); 
  33.         mFragments.add(new SearchFragment()); 
  34.         mFragments.add(new MineFragment()); 
  35.   
  36.         mViewPager = (NoSlideViewPager) findViewById(R.id.content); 
  37.         mViewPager.setOffscreenPageLimit(mFragments.size()); 
  38.         mViewPager.setAdapter(new ViewAdapter(getSupportFragmentManager())); 
  39.         mViewPager.setScanScroll(false); 
  40.   
  41.         mTabHost = (TabHost) findViewById(android.R.id.tabhost); 
  42.         mTabHost.setup(); 
  43.   
  44.         mTabHost.addTab(mTabHost.newTabSpec("0").setIndicator(createView(0)) 
  45.                 .setContent(android.R.id.tabcontent)); 
  46.         mTabHost.addTab(mTabHost.newTabSpec("1").setIndicator(createView(1)) 
  47.                 .setContent(android.R.id.tabcontent)); 
  48.         mTabHost.addTab(mTabHost.newTabSpec("2").setIndicator(createView(2)) 
  49.                 .setContent(android.R.id.tabcontent)); 
  50.         mTabHost.addTab(mTabHost.newTabSpec("3").setIndicator(createView(3)) 
  51.                 .setContent(android.R.id.tabcontent)); 
  52.         mTabHost.setOnTabChangedListener(new OnTabChangeListener() { 
  53.   
  54.             @Override 
  55.             public void onTabChanged(String tabId) { 
  56.                 int index = Integer.parseInt(tabId); 
  57.                 mViewPager.setCurrentItem(index, false); 
  58.                 mTabHost.getTabContentView().setVisibility(View.GONE); 
  59.             } 
  60.         }); 
  61.         mTabHost.setCurrentTab(0); 
  62.     } 
  63.   
  64.     @SuppressLint("NewApi"
  65.     private View createView(int tabIndex) { 
  66.         View view = LayoutInflater.from(this).inflate(R.layout.tabwidget_view, 
  67.                 null); 
  68.         TextView tv = (TextView) view.findViewById(R.id.tv); 
  69.         ImageView img = (ImageView) view.findViewById(R.id.img); 
  70.         switch (tabIndex) { 
  71.         case 0
  72.             tv.setText("首页"); 
  73.             img.setImageResource(R.drawable.icon_home); 
  74.             break
  75.         case 1
  76.             tv.setText("团购"); 
  77.             img.setImageResource(R.drawable.icon_tuan); 
  78.             break
  79.         case 2
  80.             tv.setText("发现"); 
  81.             img.setImageResource(R.drawable.icon_search); 
  82.             break
  83.         case 3
  84.             tv.setText("我的"); 
  85.             img.setImageResource(R.drawable.icon_my); 
  86.             break
  87.         } 
  88.         return view; 
  89.   
  90.     } 
  91.   
  92.     private class ViewAdapter extends FragmentPagerAdapter { 
  93.   
  94.         public ViewAdapter(FragmentManager fm) { 
  95.             super(fm); 
  96.         } 
  97.   
  98.         @Override 
  99.         public Fragment getItem(int position) { 
  100.             return mFragments.get(position); 
  101.         } 
  102.   
  103.         @Override 
  104.         public int getCount() { 
  105.             return mFragments.size(); 
  106.         } 
  107.   
  108.     } 
  109. </fragment></fragment> 

下载地址:http://down.51cto.com/data/2104430

责任编辑:倪明 来源: devstore
相关推荐

2013-06-20 14:29:49

2016-09-29 15:03:50

大众 点评

2015-07-16 13:23:13

2020-04-30 16:38:21

数据分析可视化代码

2016-01-14 10:33:35

FusionServe华为大众点评网

2013-06-19 09:51:00

大众点评网大众点评网被黑

2013-03-18 16:49:50

大众点评315央视

2016-05-23 16:22:49

大众点评支付网关系统

2022-07-07 11:27:14

技术搜索模型

2014-02-17 09:38:42

大众点评股权微信入口

2019-05-28 14:43:25

CIO大众点评APP

2012-04-20 18:26:09

大众点评网王宏.Net

2015-10-08 10:09:16

2012-07-18 10:41:35

语音功能

2012-09-04 11:09:20

2012-04-25 18:07:17

大众点评网王宏网站平台迁移

2016-02-16 17:14:13

高可用系统大众点评

2012-03-12 09:51:42

上市

2016-03-22 16:11:31

高可用性系统实践经验

2014-09-25 17:08:11

迁移Office 365大众点评
点赞
收藏

51CTO技术栈公众号