博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
viewpager viewpager+fragment
阅读量:4599 次
发布时间:2019-06-09

本文共 6441 字,大约阅读时间需要 21 分钟。

内页面  不单写页面   viewpager+布局

import java.util.ArrayList;import java.util.List;import android.os.Bundle;import android.app.Activity;import android.graphics.Color;import android.support.v4.view.ViewPager;import android.support.v4.view.ViewPager.OnPageChangeListener;import android.view.Menu;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;public class MainActivity extends Activity implements OnClickListener {    private List
list; private ViewPager viewpager; private Button button1; private Button button2; private Button button3; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); setData(); button1 = (Button) findViewById(R.id.button1); button2 = (Button) findViewById(R.id.button2); button3 = (Button) findViewById(R.id.button3); button1 .setOnClickListener(this); button2.setOnClickListener(this); button3.setOnClickListener(this); viewpager = (ViewPager) findViewById(R.id.viewpager); viewpager.setAdapter(new MyPagerAdapter(list)); viewpager.setCurrentItem(1); setButtonColor(viewpager.getCurrentItem()); viewpager.setOnPageChangeListener(new OnPageChangeListener() { @Override public void onPageSelected(int position) { setButtonColor(position); } @Override public void onPageScrolled(int arg0, float arg1, int arg2) { // TODO Auto-generated method stub } @Override public void onPageScrollStateChanged(int arg0) { // TODO Auto-generated method stub } }); } private void setData() { list = new ArrayList
(); View view1=View.inflate(MainActivity.this,R.layout.viewpager_1, null); View view2=View.inflate(MainActivity.this,R.layout.viewpager_2,null); View view3=View.inflate(MainActivity.this,R.layout.viewpager_3,null); list.add(view1); list.add(view2); list.add(view3); } private void setButtonColor(int position) { // TODO Auto-generated method stub switch(position){ case 0: button1.setTextColor(Color.WHITE); button2.setTextColor(Color.BLACK); button3.setTextColor(Color.BLACK); break; case 1: button2.setTextColor(Color.WHITE); button1.setTextColor(Color.BLACK); button3.setTextColor(Color.BLACK); break; case 2: button3.setTextColor(Color.WHITE); button2.setTextColor(Color.BLACK); button1.setTextColor(Color.BLACK); break; } } @Override public void onClick(View v) { switch (v.getId()) { case R.id.button1: viewpager.setCurrentItem(0); break; case R.id.button2: viewpager.setCurrentItem(1); break; case R.id.button3: viewpager.setCurrentItem(2); break; } } }
import java.util.List;import android.support.v4.view.PagerAdapter;import android.view.View;import android.view.ViewGroup;public class MyPagerAdapter extends PagerAdapter{    List
list; public MyPagerAdapter(List
list) { this.list=list; } @Override public int getCount() { return list.size(); } @Override public boolean isViewFromObject(View view, Object object) { return view==object; } @Override public void destroyItem(ViewGroup container, int position, Object object) { container.removeView((View) object); } @Override public Object instantiateItem(ViewGroup container, int position) { container.addView(list.get(position)); return list.get(position); } }

外页面   自定义页面   Viewpager+Fragment   (Fragment导V4包)

import java.util.ArrayList;import java.util.List;import android.os.Bundle;import android.support.v4.app.Fragment;import android.support.v4.app.FragmentActivity;import android.support.v4.app.FragmentManager;import android.support.v4.view.ViewPager;import android.support.v4.view.ViewPager.OnPageChangeListener;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.Toast;public class MainActivity extends FragmentActivity implements OnClickListener{    private ViewPager viewPager; private Button button1; private Button button2; private Button button3; private List
list; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); viewPager = (ViewPager) findViewById(R.id.viewpager); button1 = (Button) findViewById(R.id.button1); button2 = (Button) findViewById(R.id.button2); button3 = (Button) findViewById(R.id.button3); button1.setOnClickListener(this); button2.setOnClickListener(this); button3.setOnClickListener(this); setCon(); FragmentManager fm = getSupportFragmentManager(); viewPager.setAdapter(new MyFragmentpagerAdapter(fm, list)); viewPager.setOnPageChangeListener(new OnPageChangeListener() { @Override public void onPageSelected(int arg0) { // TODO Auto-generated method stub Toast.makeText(MainActivity.this, "当前页面是:页卡"+(arg0+1), 0).show(); } @Override public void onPageScrolled(int arg0, float arg1, int arg2) { // TODO Auto-generated method stub } @Override public void onPageScrollStateChanged(int arg0) { // TODO Auto-generated method stub } }); } private void setCon() { list = new ArrayList
(); Fragment1 f1=new Fragment1(); Fragment2 f2=new Fragment2(); Fragment3 f3=new Fragment3(); list.add(f1); list.add(f2); list.add(f3); } @Override public void onClick(View v) { switch (v.getId()) { case R.id.button1: viewPager.setCurrentItem(0); break; case R.id.button2: viewPager.setCurrentItem(1); break; case R.id.button3: viewPager.setCurrentItem(2); break; } } }
import java.util.List;import android.support.v4.app.Fragment;import android.support.v4.app.FragmentManager;import android.support.v4.app.FragmentPagerAdapter;import android.support.v4.view.PagerAdapter;import android.view.View;public class MyFragmentpagerAdapter extends FragmentPagerAdapter {     List
list; public MyFragmentpagerAdapter(FragmentManager fm, List
list) { super(fm); this.list=list; } @Override public Fragment getItem(int arg0) { // TODO Auto-generated method stub return list.get(arg0); } @Override public int getCount() { // TODO Auto-generated method stub return list.size(); } }
import android.os.Bundle;import android.support.v4.app.Fragment;import android.view.LayoutInflater;import android.view.View;import android.view.ViewGroup;public class Fragment1 extends Fragment{@Overridepublic View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { // TODO Auto-generated method stub View view=inflater.inflate(R.layout.fragment1, null); return view; } }

转载于:https://www.cnblogs.com/wbp0818/p/5320646.html

你可能感兴趣的文章
-Dmaven.multiModuleProjectDirectory system propery is not set.
查看>>
Python2 unichr() 函数
查看>>
Python 字典 copy()方法
查看>>
Minimum Path Sum
查看>>
Remove Duplicates from Sorted Array II
查看>>
常量指针和指针常量巧妙记忆方法[转]
查看>>
python-haproxy作业讲解视频总结
查看>>
批处理文件脚本总结
查看>>
快速排序C++代码
查看>>
mui搜索框 搜索点击事件
查看>>
bzoj 5289: [Hnoi2018]排列
查看>>
IE10 招贤纳意问题整理文章-安装卸载、功能设置篇
查看>>
joomla处境堪忧
查看>>
Jquery-AJAX
查看>>
python 在windows环境下 压缩文件
查看>>
CSS 动画总结
查看>>
mysql命令gruop by报错this is incompatible with sql_mode=only_full_group_by
查看>>
LeetCode55 Jump Game
查看>>
poj 3764 The xor-longest Path (01 Trie)
查看>>
预备作业01
查看>>