Button按钮换脸viewpager滑动+点击监听 _____部分重点代码
2017-09-20 16:09
337 查看
public class MainActivity extends AppCompatActivity { ArrayList<Fragment> fraarr = new ArrayList<>(); ArrayList<Button> btarr = new ArrayList<>(); private ViewPager vp; private Button bt1; private DrawerLayout drawerlayout; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); vp = (ViewPager) findViewById(R.id.vp); drawerlayout = (DrawerLayout) findViewById(R.id.drawerlayout); Button bt1 = (Button) findViewById(R.id.bt1); Button bt2 = (Button) findViewById(R.id.bt2); Button bt3 = (Button) findViewById(R.id.bt3); Button bt4 = (Button) findViewById(R.id.bt4); btarr.add(bt1); btarr.add(bt2); btarr.add(bt3); btarr.add(bt4); vpshuju(); vpspq vpspq = new vpspq(getSupportFragmentManager()); vp.setAdapter(vpspq); //点击变色
for(int y=0;y<btarr.size();y++){ Button button = btarr.get(y); button.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { //获取点击ID int id = view.getId(); Log.e("chen", "onClick: ------"+id ); vp.setCurrentItem(id%btarr.size()); } });}
//滑动变色 vp.setOnPageChangeListener(new ViewPager.OnPageChangeListener() { @Override public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) { } 4000 @Override public void onPageSelected(int position) { for(int i=0;i<btarr.size();i++){ if(i==position%btarr.size()){ Button button = btarr.get(i); button.setTextColor(Color.RED); }else{ btarr.get(i).setTextColor(Color.BLACK); } } } @Override public void onPageScrollStateChanged(int state) { } }); } class vpspq extends FragmentPagerAdapter{ public vpspq(FragmentManager fm) { super(fm); } @Override public Fragment getItem(int position) { return fraarr.get(position); } @Override public int getCount() { return fraarr.size(); } }
//自己新建frament充当viewpager的数据源 public void vpshuju(){ yi yi = new yi(); er er = new er(); san san = new san(); si si = new si(); viewp viewp = new viewp(); fraarr.add(yi); fraarr.add(er); fraarr.add(san); fraarr.add(viewp); } }//布局文件XML
<LinearLayout android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation="vertical"> <android.support.v4.view.ViewPager android:id="@+id/vp" android:layout_width="wrap_content" android:layout_height="400dp"> </android.support.v4.view.ViewPager> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content"> <Button android:text="你好啊" android:textColor="#cc0000" android:id="@+id/bt1" android:layout_weight="1" android:layout_width="0dp" android:layout_height="wrap_content" /> <Button android:text="我好啊" android:id="@+id/bt2" android:layout_weight="1" android:layout_width="0dp" android:layout_height="wrap_content" /> <Button android:text="大家好" android:id="@+id/bt3" android:layout_weight="1" android:layout_width="0dp" android:layout_height="wrap_content" /> <Button android:text="好好好" android:id="@+id/bt4" android:layout_weight="1" android:layout_width="0dp" android:layout_height="wrap_content" /> </LinearLayout>
//自己新建的Framnet 一个类一个布局文件进行关联
//yi
public class yi extends Fragment{@Nullable@Overridepublic View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {View inflate = View.inflate(getActivity(), R.layout.one, null);return inflate;}}//yi的布局文件 one
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="match_parent"android:layout_height="match_parent"><TextViewandroid:text="时的快感就能发"android:layout_width="match_parent"android:layout_height="match_parent" /></LinearLayout>
相关文章推荐
- Android 使用ViewPager和RadioGroup配合Fragment实现标签页,可点击按钮切换、滑动切换。
- 第三个引导页添加button按钮(滑动viewpager)
- 滑动或点击按钮切换页面 ViewPager+RadioGroup+Fragment
- iOS 在tableView上添加button导致按钮没有点击效果和不能滑动的 zhuang
- activity获取viewpager中fragment里的button按钮,并设置监听怎么实现
- iOS 在tableView上添加button导致按钮没有点击效果和不能滑动的问题
- viewpager的setCurrentItem 底部导航栏点击按钮实现直接跳转,去掉滑动效果
- 在ListView、ScrollView、PageView等添加Button,点击按钮View不能滑动问题。
- iphone 利用代码向视图(view)添加按钮(button)
- Android之ViewPager+Fragment实现页面点击切换和手势滑动
- Android ViewPager内容部分随手势上下滑动隐藏与显示Indicator效果的实现
- 自定义ViewPagerIndicator:100行代码实现两种可滑动指示器
- Android ViewPager内容部分随手势上下滑动隐藏与显示Indicator效果的实现
- 解决DrawerLayout以及viewpager点击或者滑动后卡顿的问题
- ViewPager+Fragment实现页面点击切换和手势滑动
- IOS学习之动态添加Button和监听UIAlertView按钮
- ViewPager使用详解和相关技巧之禁止滑动和滑动到最后一条时的监听等方法
- 设置UITableView背景透明/监听cell左边的删除按钮的点击事件
- 通过点击按钮实现ViewPager的切换