栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Android引导页实现

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Android引导页实现

我们在第一次使用一个app的时候或多或少都会有引导页的存在,在这个帖子中我已经整理好了相关的类容

下面是部分截图

先创建一个空的activity叫StartActivity里面的代码为

public class StartActivity extends AppCompatActivity {

    private ViewPager startViewpager;
    public List introductionList;
    private IntroductionAdapter introductionAdapter;
    private Button cButton;

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

        initView();
        initAdapter();
        initClick();
    }

    
    private void initView() {
        startViewpager = findViewById(R.id.start_viewpager);
        introductionList = new ArrayList<>();
        introductionList.add(getView(R.layout.introduction_a));
        introductionList.add(getView(R.layout.introduction_b));
        introductionList.add(getView(R.layout.introduction_c));

    }

    
    private void initAdapter() {
        introductionAdapter = new IntroductionAdapter(introductionList);
        startViewpager.setAdapter(introductionAdapter);
    }

    
    private View getView(int resId) {
        View view = LayoutInflater.from(this).inflate(resId, null);
        return view;
    }

    
    private void initClick() {
       cButton=introductionList.get(2).findViewById(R.id.c_button);
       cButton.setOnClickListener(new View.OnClickListener() {
           @Override
           public void onClick(View v) {
               Toast.makeText(StartActivity.this, "测试点击", Toast.LENGTH_SHORT).show();
           }
       });
    }
}

创建适配器 IntroductionAdapter 并且继承PagerAdapter

public class IntroductionAdapter extends PagerAdapter {

    private ListpageList;

    
    public IntroductionAdapter(Listlist){
        this.pageList=list;
    }

    
    @Override
    public int getCount() {
        return pageList.size();
    }

    
    @Override
    public boolean isViewFromObject(@NonNull View view, @NonNull Object object) {
        return view==object;
    }

    
    @NonNull
    @Override
    public Object instantiateItem(@NonNull ViewGroup container, int position) {
        View view=pageList.get(position);
        container.addView(view);
        return view;
    }

    
    @Override
    public void destroyItem(@NonNull ViewGroup container, int position, @NonNull Object object) {
       
       container.removeView(pageList.get(position));

    }

}

在androidmainfest文件中修改首页启动

    


        
            
                
                
            
        

        
    


在activity_start.xml中添加布局


    
        
        
    

创建三个引导页 introduction_a





    

introduction_b





    


introduction_c





    

    

编译安装即可

工程目录截图

gitee 地址:

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/933327.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号