package com.example.zh_viewpaper; import androidx.appcompat.app.AppCompatActivity; import androidx.viewpager.widget.ViewPager; import android.os.Bundle; import android.view.LayoutInflater; import android.view.View; import java.util.ArrayList; import java.util.List; public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); LayoutInflater lf = getLayoutInflater().from(this); View view1 = lf.inflate(R.layout.layout1, null); View view2 = lf.inflate(R.layout.layout2, null); View view3 = lf.inflate(R.layout.layout3, null); List<View> viewList = new ArrayList<>(); viewList.add(view1); viewList.add(view2); viewList.add(view3); ViewPager viewPager = findViewById(R.id.vp); MyAdapter myAdapter = new MyAdapter(viewList); viewPager.setAdapter(myAdapter); } }
时间: 2024-04-16 22:26:30 浏览: 119
根据您提供的代码,我注意到您没有在布局文件中声明 `PagerTabStrip`,但是您的错误信息中提到了 `PagerTabStrip` 类型。这可能是导致问题的原因。
如果您想在 `ViewPager` 中显示标签,您可以使用 `TabLayout` 组件来实现,而不是 `PagerTabStrip`。以下是修改后的代码示例:
```java
import androidx.appcompat.app.AppCompatActivity;
import androidx.viewpager.widget.ViewPager;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import com.google.android.material.tabs.TabLayout;
import java.util.ArrayList;
import java.util.List;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
LayoutInflater lf = getLayoutInflater().from(this);
View view1 = lf.inflate(R.layout.layout1, null);
View view2 = lf.inflate(R.layout.layout2, null);
View view3 = lf.inflate(R.layout.layout3, null);
List<View> viewList = new ArrayList<>();
viewList.add(view1);
viewList.add(view2);
viewList.add(view3);
ViewPager viewPager = findViewById(R.id.vp);
MyAdapter myAdapter = new MyAdapter(viewList);
viewPager.setAdapter(myAdapter);
TabLayout tabLayout = findViewById(R.id.tab_layout);
tabLayout.setupWithViewPager(viewPager); // 将 TabLayout 与 ViewPager 绑定
}
}
```
请确保在布局文件中添加一个具有指定 id 的 `TabLayout` 组件,用于显示标签。然后使用 `setupWithViewPager()` 方法将 `TabLayout` 与 `ViewPager` 绑定起来。
希望这可以解决您的问题。如果您仍然遇到困难,请提供更多信息,我将尽力帮助您。
阅读全文
相关推荐










