美文网首页安卓开发博客Android UI
android app主题UI界面框架搭建 tablayout+

android app主题UI界面框架搭建 tablayout+

作者: nade_s | 来源:发表于2018-07-09 20:02 被阅读16次

先看一下效果

tablayout+viewpager+fragment 这种界面搭建 也算是目前界面中的一个主流 市场上可以说是占据了

半壁江山 设计简洁明了 功能显著 开发者搭建起来也很简单 下面直接上代码 首先要先添加两个依赖

首先要先添加两个依赖 

compile ‘com.android.support:support-v4:25.3.0’ // v4包 

compile ‘com.android.support:design:25.3.1’ // design包 

activity 的 xml 文件 

LinearLayout 

android:layout_width=”match_parent” 

android:layout_height=”match_parent” 

android:orientation=”vertical”> 

android.support.design.widget.TabLayout 

android:layout_width=”match_parent” 

android:layout_height=”50dp” 

android:background=”#d5f9f3” 

app:tabIndicatorColor=”#ff6c2a” 

app:tabMode=”fixed” 

app:tabSelectedTextColor=”#ff6c2a” 

app:tabTextColor=”#999999” 

android:id=”@+id/tab_layout”> 

android.support.v4.view.ViewPager 

android:layout_width=”match_parent” 

android:layout_height=”match_parent” 

android:id=”@+id/view_pager”> 

/LinearLayout>

activity 代码片

初始化view 然后绑定数据 

private TabLayout tab_layout; 

private ViewPager view_pager; 

private String[]tabs = new String[]{“首页”,”消息”,”我的”};// title数组 

private List fragList = new ArrayList<>(); // fragment 集合 

private HomeFragment homeFragment; 

private MineFragment mineFragment; 

private MessageFragment messageFragment; 

public class PagerAndFragmentActivity extends FragmentActivity {

private TabLayout tab_layout;

private ViewPager view_pager;

private String[]tabs = new String[]{"首页","消息","我的"};// title数组

private List fragList = new ArrayList<>();  // fragment 集合

private HomeFragment homeFragment;

private MineFragment mineFragment;

private MessageFragment messageFragment;

@Override

protected void onCreate(Bundle savedInstanceState) {

    super.onCreate(savedInstanceState);

    setContentView(R.layout.activity_pager_and_fragment);

    tab_layout = (TabLayout) findViewById(R.id.tab_layout);

    view_pager = (ViewPager) findViewById(R.id.view_pager);

    // 创建fragment对象

    homeFragment = new HomeFragment();

    mineFragment = new MineFragment();

    messageFragment = new MessageFragment();

    fragList.add(homeFragment);

    fragList.add(mineFragment);

    fragList.add(messageFragment);

    view_pager.setCurrentItem(0);

    view_pager.setAdapter(new MyFrageStatePagerAdapter(getSupportFragmentManager()));

    // 将viewpager 设置给tablayout

    tab_layout.setupWithViewPager(view_pager);

}

    // viewpager 的 adapter

private class MyFrageStatePagerAdapter extends FragmentStatePagerAdapter {

    public MyFrageStatePagerAdapter(android.support.v4.app.FragmentManager fm) {

        super(fm);

    }

    @Override

    public Fragment getItem(int position) {

        return fragList.get(position);

    }

    @Override

    public int getCount() {

        return fragList.size();

    }

    @Override

    public CharSequence getPageTitle(int position) {

        return tabs[position];

    }

}

代码部分很简单 fragment 就是你的app 数据内容 本文使用的是show  和 hint 的方式控制fragment   防止 fragment 重叠和 数据切换刷新问题 

重写 防止重影

@Override

protected void onSaveInstanceState(Bundle outState) {

//super.onSaveInstanceState(outState);

}

重写 fragment 切换刷新

@Override

public void onConfigurationChanged(Configuration newConfig) {

super.onConfigurationChanged(newConfig);

}

好了 本文完结 如有疑问 欢迎评论或私信

相关文章

  • android app主题UI界面框架搭建 tablayout+

    先看一下效果 tablayout+viewpager+fragment 这种界面搭建 也算是目前界面中的一个主流 ...

  • Quartz 2D

    Quartz 2D 利用UIKit框架提供的控件,能够搭建常见的UI界面。但是,有些UI界面极其复杂、而且比较个性...

  • 根据现有的android开源UI框架,搭建的一个app

    根据现有的android开源UI框架,搭建的一个app,样子和兼容性都还不错,喜欢的同学可以看看。 使用的开源框架...

  • 扯两句MVC的设计模式

    一个app开发的主要流程可以简单概括为:搭建UI界面---> 请求服务器数据 ---> 把数据展示在UI界面上 -...

  • android 启动-UI

    UI 也可以理解位launcher, 启动UI ,android 整个界面图标就出来了,用户可以选择启动app,...

  • UIAutomator2

    介绍一种Android UI自动化框架UIAutomator2,使用发现该框架有如下优点:1.环境搭建便捷2.UI...

  • flutter简介

    简介 Flutter是谷歌的移动UI框架,可以快速在IOS和Android上构建高质量的原生UI界面。Flutte...

  • AS找不到New Flutter Project

    最近Google推了一个新的移动UI框架——Flutter,可以使IOS和Android高效开发统一的UI界面,从...

  • (8 Android) 用户界面UI设计

    (8 Android) 用户界面UI设计 3.1.1 Android界面视图类 Android 图形化的用户界面(...

  • 19-项目实战(彩票02)

    知识点回顾 开发方式:使用代码搭建框架,因为彩票app的界面非常多,使用代码搭建方便后期维护 环境部署app支持的...

网友评论

本文标题:android app主题UI界面框架搭建 tablayout+

本文链接:https://www.haomeiwen.com/subject/lhotpftx.html