随笔 - 62  文章 - 0  评论 - 114  阅读 - 18万

仿UC底部菜单栏实例源码

相关的链接:

Android 底部菜单栏实现
http://www.eoeandroid.com/thread-211510-1-1.html

android锁定底部菜单栏实现
http://www.eoeandroid.com/thread-232563-1-1.html

Android实现底部菜单栏
http://www.eoeandroid.com/thread-66152-1-1.html

自定义底部菜单栏(附源码)
http://www.eoeandroid.com/thread-49199-1-1.html

-----------------帖子正文---------------

最近刚看完ViewPager,就想到做这样一个Demo,当然也参考了高手们的实例
里边的网格菜单,开始我打算用自定义的imgBtn,但是发现放在pager选项卡中不好排版,所以最好选了GridView,简单实用

一、

先主界面xml

activity_main.xml

复制代码
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@drawable/bg"
    tools:context=".MainActivity" >
    <Button
        android:id="@+id/btn_menu"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_centerHorizontal="true"
        android:text="show/hide Menu" />
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_below="@+id/btn_menu"
        android:gravity="center"
        android:orientation="horizontal" >
        <com.example.myMenu.MyImgBtn
            android:id="@+id/main_btn1"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_margin="15dp"
            android:layout_weight="1" />
        <com.example.myMenu.MyImgBtn
            android:id="@+id/main_btn2"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_margin="15dp"
            android:layout_weight="1" />
        <com.example.myMenu.MyImgBtn
            android:id="@+id/main_btn3"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_margin="15dp"
            android:layout_weight="1" />
        <com.example.myMenu.MyImgBtn
            android:id="@+id/main_btn4"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_margin="15dp"
            android:layout_weight="1" />
    </LinearLayout>
    <RelativeLayout
        android:id="@+id/layout_menu"
        android:layout_width="match_parent"
        android:layout_height="200dp"
        android:layout_alignParentBottom="true" >
        <LinearLayout
            android:id="@+id/menu"
            android:layout_width="match_parent"
            android:layout_height="40dp"
            android:background="#dd000000"
            android:gravity="center" >
            <TextView
                android:id="@+id/tv_main"
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:gravity="center"
                android:text="常用"
                android:textColor="#ffffffff" />
            <TextView
                android:id="@+id/tv_utils"
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:gravity="center"
                android:text="工具"
                android:textColor="#ffffffff" />
            <TextView
                android:id="@+id/tv_set"
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:gravity="center"
                android:text="设置"
                android:textColor="#ffffffff" />
        </LinearLayout>
        <LinearLayout
            android:id="@+id/layout_anim"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_below="@+id/menu"
            android:background="#eeff8c00" >
            <ImageView
                android:id="@+id/iv_cursor"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:scaleType="matrix"
                android:src="@drawable/img_cursor" />
        </LinearLayout>
        <android.support.v4.view.ViewPager
            android:id="@+id/myPager"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_below="@+id/layout_anim"
            android:flipInterval="30"
            android:persistentDrawingCache="animation" />
    </RelativeLayout>
</RelativeLayout>
复制代码

ViewPager中的三个选项卡xml

复制代码
view_main.xml,view_set.xml,view_utils.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="#77ff0000"
    android:orientation="vertical" >
   
    <GridView
        android:id="@+id/myGridView"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:numColumns="4"
        android:layout_margin="10dp"
        android:horizontalSpacing="20dp"
        android:gravity="center"
        android:verticalSpacing="20dp"
        ></GridView>

</LinearLayout>
复制代码

这是选项卡一view_main.xml,后面的两个和这个一样,就不发了

最后就是还有一个GirdView的适配器xml

复制代码
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent" >
    <ImageView
        android:id="@+id/imgbtn_img"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerHorizontal="true"
      
       />

    <TextView
        android:id="@+id/imgbtn_text"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/imgbtn_img"
        android:layout_centerHorizontal="true"
        android:text="Text"
        android:textColor="#ff0000ff"
        android:textSize="10sp" />
   

</RelativeLayout>


xml布局部分就这么多了
复制代码

原文:

仿UC底部菜单栏
http://www.eoeandroid.com/thread-247377-1-1.html

 

 

 

 

 

 

 

 

posted on   nuliniao  阅读(910)  评论(0编辑  收藏  举报
编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
< 2013年1月 >
30 31 1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31 1 2
3 4 5 6 7 8 9

点击右上角即可分享
微信分享提示