ViewPager2+Fragment联动

 

 主Activity

package com.chengzis.nextstage;

import androidx.appcompat.app.AppCompatActivity;
import androidx.fragment.app.Fragment;
import androidx.viewpager2.widget.ViewPager2;

import android.os.Bundle;
import android.view.View;
import android.widget.ImageView;
import android.widget.LinearLayout;

import com.chengzis.nextstage.adapter.FragmentAdapter;
import com.chengzis.nextstage.fragment.ViewPager2Fragment1;

import java.util.ArrayList;
import java.util.List;

/**
 * ViewPager2+Fragment联动
 * 1.先写全屏 (1.fragment  adapter extends )
 * <p>
 * 2.在写下面的tab
 */

/**
 * 知识点;
 * FragmentManager getSupportFragmentManager()
 *
 * @author 83765
 */
public class ViewPager2Fragment extends AppCompatActivity implements View.OnClickListener {
    private LinearLayout lv1, lv2, lv3, lv4;
    private ImageView iv1, iv2, iv3, iv4;
    private ViewPager2 vp2;


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_view_pager2_fragment);

        initPager();
        initTabView();


    }


    private void initTabView() {
        lv1 = findViewById(R.id.Lv_1);
        lv2 = findViewById(R.id.Lv_2);
        lv3 = findViewById(R.id.Lv_3);
        lv4 = findViewById(R.id.Lv_4);

        lv1.setOnClickListener(this);
        lv2.setOnClickListener(this);
        lv3.setOnClickListener(this);
        lv4.setOnClickListener(this);

        iv1 = findViewById(R.id.iv_1);
        iv2 = findViewById(R.id.iv_2);
        iv3 = findViewById(R.id.iv_3);
        iv4 = findViewById(R.id.iv_4);


    }

    private void initPager() {
        vp2 = findViewById(R.id.vp2);
        ViewPager2Fragment1 fragment1 = new ViewPager2Fragment1();
        List<Fragment> fragmentList = new ArrayList<>();
        fragmentList.add(ViewPager2Fragment1.newInstance("微信"));
        fragmentList.add(ViewPager2Fragment1.newInstance("通讯录"));
        fragmentList.a
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,这里是一个简单的示例代码,演示了如何使用ViewPager2和Fragment来实现页面切换: 首先,在你的布局文件中添加ViewPager2: ```xml <androidx.viewpager2.widget.ViewPager2 android:id="@+id/view_pager" android:layout_width="match_parent" android:layout_height="match_parent" /> ``` 然后,在你的Activity或Fragment中,创建一个PagerAdapter,并将其设置给ViewPager2: ```kotlin class MyPagerAdapter(fragment: Fragment) : FragmentStateAdapter(fragment) { override fun getItemCount() = 3 override fun createFragment(position: Int): Fragment { return when (position) { 0 -> FragmentOne() 1 -> FragmentTwo() else -> FragmentThree() } } } // 在Activity或Fragment中 view_pager.adapter = MyPagerAdapter(this) ``` 在这个示例中,PagerAdapter有三个页面,分别对应着FragmentOne、FragmentTwo和FragmentThree。你可以根据自己的需求,自定义PagerAdapter的实现。 最后,你需要在你的Fragment中实现具体的布局和逻辑: ```kotlin class FragmentOne : Fragment() { override fun onCreateView( inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle? ): View? { return inflater.inflate(R.layout.fragment_one, container, false) } override fun onViewCreated(view: View, savedInstanceState: Bundle?) { super.onViewCreated(view, savedInstanceState) // TODO: 在这里添加具体的逻辑 } } ``` 重复以上步骤,你就可以创建多个不同的Fragment,然后用ViewPager2来切换它们了。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值