viewPager2页面的切换
使用流程:
1.定义ViewPager
2.为ViewPager创建Adapter
ViewPagerAdapter
package com.example.viewpagerandfragment; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.RelativeLayout; import android.widget.TextView; import androidx.annotation.NonNull; import androidx.recyclerview.widget.RecyclerView; import java.util.ArrayList; import java.util.List; public class ViewPagerAdapter extends RecyclerView.Adapter<ViewPagerAdapter.ViewPagerViewHolder>{ private List<String> titles = new ArrayList<>(); private List<Integer> color = new ArrayList<>(); public ViewPagerAdapter(){ titles.add("苹果"); titles.add("香蕉"); titles.add("apple"); titles.add("banana"); titles.add("葡萄"); titles.add("哈密瓜"); titles.add("吃"); titles.add("就"); titles.add("完"); titles.add("了"); color.add(R.color.white); color.add(R.color.purple_200); color.add(R.color.red); color.add(R.color.purple_500); color.add(R.color.white); color.add(R.color.purple_200); color.add(R.color.red); color.add(R.color.white); color.add(R.color.purple_200); color.add(R.color.red); } @NonNull @Override public ViewPagerViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) { return new ViewPagerViewHolder(LayoutInflater.from(parent.getContext()).inflate(R.layout.item_pager,parent,false)); } @Override public void onBindViewHolder(@NonNull ViewPagerViewHolder holder, int position) { holder.textView.setText(titles.get(position)); holder.relativeLayout.setBackgroundResource(color.get(position)); } @Override public int getItemCount() { return 10; } class ViewPagerViewHolder extends RecyclerView.ViewHolder{ TextView textView ; RelativeLayout relativeLayout; public ViewPagerViewHolder(@NonNull View itemView) { super(itemView); relativeLayout = itemView.findViewById(R.id.container); textView = itemView.findViewById(R.id.tv_title); } } }
MainActivity
package com.example.viewpagerandfragment; import androidx.appcompat.app.AppCompatActivity; import androidx.recyclerview.widget.RecyclerView; import androidx.viewpager2.widget.ViewPager2; import android.os.Bundle; public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); ViewPager2 viewPager2 = findViewById(R.id.viewPage); ViewPagerAdapter viewPage2Adapter =new ViewPagerAdapter(); viewPager2.setAdapter(viewPage2Adapter); } }
activity_main.xml
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".MainActivity"> <androidx.viewpager2.widget.ViewPager2 android:layout_width="match_parent" android:layout_height="match_parent" android:id="@+id/viewPage" android:background="@color/purple_200" /> </LinearLayout>
item_pager.xml
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:id="@+id/container" > <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/tv_title" android:textColor="#ff4532" android:layout_centerInParent="true" android:textSize="32dp" android:text="我喜欢学习" /> </RelativeLayout>
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· DeepSeek在M芯片Mac上本地化部署