Android菜单(动画菜单、360波纹菜单)
发布时间 - 2026-01-11 00:25:25 点击率:次前言:Android菜单常用集合:FragmentTabHost系统菜单、上移式菜单、360波纹菜单、展开式菜单。详解注释,可直接拿来用!

效果:
开发环境:AndroidStudio2.1.2
部分代码(Activity)
public class NormalActivity extends AppCompatActivity {
private FragmentTabHost mTabHost;
private String[] mTabTitle = new String[]{"首页", "软件", "游戏", "管理"};
//菜单图片样式
private int[] mImageResId = new int[]{R.drawable.sel_tab_home, R.drawable.sel_tab_app,
R.drawable.sel_tab_game, R.drawable.sel_tab_mag};
//要加载的Fragment
private Class[] mFragClass = new Class[]{TabFragment.class, TabFragment.class,
TabFragment.class, TabFragment.class};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_menu_normal);
initTabHost();
}
private void initTabHost() {
mTabHost = (FragmentTabHost) findViewById(android.R.id.tabhost);
mTabHost.setup(this, getSupportFragmentManager(), R.id.relate_tab_content);
for (int i = 0; i < mFragClass.length; i++) {
//Bundle传值到Fragment中,不传值,则第三个参数为null
Bundle bundle = new Bundle();
bundle.putString(TabFragment.FRAG_KEY, mTabTitle[i]);
//第一参数:菜单的文字&样式 第二个参数:需要加载Fragment,第三个参数:需要传到Fragment中的值
mTabHost.addTab(mTabHost.newTabSpec(mTabTitle[i]).setIndicator(getIndicator(i)), mFragClass[i], bundle);
}
//去掉间隔线
mTabHost.getTabWidget().setDividerDrawable(android.R.color.transparent);
}
//菜单的布局样式
private View getIndicator(int index) {
View view = LayoutInflater.from(this).inflate(R.layout.tabhost_indicator, null);
ImageView imageView = (ImageView) view.findViewById(R.id.tab_icon);
TextView title = (TextView) view.findViewById(R.id.tab_title);
imageView.setImageResource(mImageResId[index]);
title.setText(mTabTitle[index]);
return view;
}
源码下载
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持!
# android
# 菜单
# Android编程实现仿优酷圆盘旋转菜单效果的方法详解【附demo源码下载】
# Android自定义控件之仿优酷菜单
# Android仿优酷圆形菜单学习笔记分享
# Android编程实现仿优酷旋转菜单效果(附demo源码)
# Android 带有弹出收缩动画的扇形菜单实例
# Android实现360手机助手底部的动画菜单
# Android程序开发之使用Design包实现QQ动画侧滑效果和滑动菜单导航
# Android利用属性动画实现优酷菜单
# 第三个
# 加载
# 第二个
# 可直接
# 首页
# 源码下载
# 来用
# 不传
# Bundle
# sel_tab_home
# drawable
# mTabTitle
# sel_tab_game
# mImageResId
# int
# sel_tab_app
# TabFragment
# mFragClass
# protected
# Override
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
合肥制作网站的公司有哪些,合肥聚美网络科技有限公司介绍?
BootStrap整体框架之基础布局组件
html5audio标签播放结束怎么触发事件_onended回调方法【教程】
如何在新浪SAE免费搭建个人博客?
HTML5建模怎么导出为FBX格式_FBX格式兼容性及导出步骤【指南】
Laravel路由怎么定义_Laravel核心路由系统完全入门指南
详解免费开源的.NET多类型文件解压缩组件SharpZipLib(.NET组件介绍之七)
如何快速完成中国万网建站详细流程?
Android滚轮选择时间控件使用详解
Claude怎样写约束型提示词_Claude约束提示词写法【教程】
Win11怎么查看显卡温度 Win11任务管理器查看GPU温度【技巧】
php结合redis实现高并发下的抢购、秒杀功能的实例
Laravel如何使用Collections进行数据处理?(实用方法示例)
iOS正则表达式验证手机号、邮箱、身份证号等
Laravel的.env文件有什么用_Laravel环境变量配置与管理详解
Claude怎样写结构化提示词_Claude结构化提示词写法【教程】
Laravel如何集成Inertia.js与Vue/React?(安装配置)
英语简历制作免费网站推荐,如何将简历翻译成英文?
简单实现Android文件上传
Laravel中Service Container是做什么的_Laravel服务容器与依赖注入核心概念解析
JavaScript如何操作视频_媒体API怎么控制播放
重庆市网站制作公司,重庆招聘网站哪个好?
Laravel路由Route怎么设置_Laravel基础路由定义与参数传递规则【详解】
Laravel如何实现API速率限制?(Rate Limiting教程)
Laravel如何记录日志_Laravel Logging系统配置与自定义日志通道
Laravel项目怎么部署到Linux_Laravel Nginx配置详解
Laravel怎么写单元测试_PHPUnit在Laravel项目中的基础测试入门
开心动漫网站制作软件下载,十分开心动画为何停播?
Laravel如何配置和使用队列处理异步任务_Laravel队列驱动与任务分发实例
百度浏览器ai对话怎么关 百度浏览器ai聊天窗口隐藏
Laravel如何监控和管理失败的队列任务_Laravel失败任务处理与监控
Laravel怎么实现支付功能_Laravel集成支付宝微信支付
如何快速搭建高效服务器建站系统?
Laravel如何使用Gate和Policy进行授权?(权限控制)
javascript读取文本节点方法小结
Laravel与Inertia.js怎么结合_使用Laravel和Inertia构建现代单页应用
三星网站视频制作教程下载,三星w23网页如何全屏?
香港服务器建站指南:外贸独立站搭建与跨境电商配置流程
java获取注册ip实例
如何快速登录WAP自助建站平台?
Win11怎么开启自动HDR画质_Windows11显示设置HDR选项
制作电商网页,电商供应链怎么做?
装修招标网站设计制作流程,装修招标流程?
Win11摄像头无法使用怎么办_Win11相机隐私权限开启教程【详解】
Laravel如何使用Blade模板引擎?(完整语法和示例)
Laravel事件和监听器如何实现_Laravel Events & Listeners解耦应用的实战教程
logo在线制作免费网站在线制作好吗,DW网页制作时,如何在网页标题前加上logo?
微信小程序 五星评分(包括半颗星评分)实例代码
Laravel如何实现多表关联模型定义_Laravel多对多关系及中间表数据存取【方法】
昵图网官方站入口 昵图网素材图库官网入口

