效果图:

第三十五篇-AppBarLayout的使用

添加appbarlayout到xml文件中,然后在toolbar下面添加一个imageview并设置居中放置,我放置的是上面那个安卓的图标。

第三十五篇-AppBarLayout的使用

根据之前学过的toolbar那一节,结合viewpaper和toolbar设置三个页面,这时,运行程序,可能发现那三个页面并没有显示出来,NetedScollView这是个可滚动的页面,单击它,在右侧勾选fillViewport。在运行程序就可以显示页面了。

page1

第三十五篇-AppBarLayout的使用

page2

第三十五篇-AppBarLayout的使用

page3

第三十五篇-AppBarLayout的使用

附上代码

main.java

package com.example.aimee.appbarlayouttest;

import android.support.annotation.Nullable;
import android.support.design.widget.TabLayout;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentPagerAdapter;
import android.support.v4.view.ViewPager;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;

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

public class MainActivity extends AppCompatActivity {
    TabLayout tabLayout;
    ViewPager viewPager;
    List<Fragment>fragments;
    String[] title={"新闻","财经","娱乐"};

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

        tabLayout=findViewById(R.id.tabs);
        viewPager=findViewById(R.id.viewpaper);

        fragments=new ArrayList<>();
        fragments.add(new MyFragment1());
        fragments.add(new MyFragment2());
        fragments.add(new MyFragment3());
        MyAdpter myAdpter=new MyAdpter(getSupportFragmentManager(),fragments);
        viewPager.setAdapter(myAdpter);
        tabLayout.setupWithViewPager(viewPager);
    }

    private class MyAdpter extends FragmentPagerAdapter{
        private List<Fragment>fragments;

        public MyAdpter(FragmentManager fm,List<Fragment>fragments) {
            super(fm);
            this.fragments=fragments;
        }

        @Override
        public Fragment getItem(int position) {
            return fragments.get(position);
        }

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

        @Nullable
        @Override
        public CharSequence getPageTitle(int position) {
            return title[position];
        }
    }
}
View Code

相关文章:

  • 2021-08-22
  • 2021-11-14
  • 2022-02-01
  • 2021-12-11
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2021-06-09
  • 2022-12-23
  • 2021-11-30
  • 2021-12-29
  • 2022-12-23
  • 2021-07-29
相关资源
相似解决方案