SlidingMenu第三篇 --- SlidingMenu使用介绍
- 在Activity中通过SlidingMenu的构造方法,直接设置侧滑菜单
public class Main2Activity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main2);
// 实例化SlidingMenu
SlidingMenu slidingMenu = new SlidingMenu(this);
//设置滑动模式
slidingMenu.setMode(SlidingMenu.LEFT);
// 设置主屏幕占据大小
slidingMenu.setBehindOffset(500);
//设置滑动的屏幕范围
slidingMenu.setTouchModeAbove(SlidingMenu.TOUCHMODE_FULLSCREEN);
// 设置菜单布局
slidingMenu.setMenu(R.layout.activity_leftmenu);
// 关联Activity
slidingMenu.attachToActivity(this,SlidingMenu.SLIDING_CONTENT,false);
}
2. 继承SlidingActivity实现侧滑菜单
public class Main3Activity extends SlidingActivity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// 设置主页面的布局
setContentView(R.layout.activity_main3);
// 设置菜单布局
setBehindContentView(R.layout.activity_leftmenu);
final SlidingMenu slidingMenu = getSlidingMenu();
// 设置主页面偏移位置
slidingMenu.setBehindOffset(500);
// 设置滑动菜单位置
slidingMenu.setMode(SlidingMenu.LEFT);
// 设置滑动方向
slidingMenu.setTouchModeAbove(SlidingMenu.TOUCHMODE_FULLSCREEN);
findViewById(R.id.btn_left).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
TextView textView = (TextView) findViewById(R.id.tv_left);
textView.setText("我是侧边栏的文本");
TextView textView1 = (TextView)findViewById(R.id.tv_content);
textView1.setText("我的内容被侧边栏的按钮改变了");
}
});
findViewById(R.id.btn_content).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
TextView textView = (TextView) findViewById(R.id.tv_left);
textView.setText("我是侧边栏的文本,我的内容被主页面的按钮改变了");
TextView textView1 = (TextView)findViewById(R.id.tv_content);
textView1.setText("我的内容被主页的按钮改变了");
}
});
}
}
3. 通过继承SlidingFragmentActivity实现滑动菜单
public class MainActivity extends SlidingFragmentActivity {
public static final String MAIN_CONTENT_TAG = "main_content_tag";
public static final String LEFTMENU_TAG = "leftmenu_tag";
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// 设置主页面
setContentView(R.layout.activity_main);
// 设置侧边栏
setBehindContentView(R.layout.activity_leftmenu);
// 设置滑动的屏幕范围
SlidingMenu slidingMenu = getSlidingMenu();
slidingMenu.setTouchModeAbove(SlidingMenu.TOUCHMODE_FULLSCREEN);
// 设置主屏幕占据大小
slidingMenu.setBehindOffset(DensityUtil.dip2px(MainActivity.this,500));
// 设置模式
slidingMenu.setMode(SlidingMenu.LEFT);
//设置Fragment
FragmentManager fm = getSupportFragmentManager();
// 开启事务
FragmentTransaction ft = fm.beginTransaction();
// 替换
ft.replace(R.id.fl_main_content,new ContentFragment(),MAIN_CONTENT_TAG);
ft.replace(R.id.fl_leftmenu,new LeftMenuFragment(),LEFTMENU_TAG);
// 提交
ft.commit();
}
}
SlidingMenu第三篇 --- SlidingMenu使用介绍的更多相关文章
- 第三篇:RESTful介绍
在介绍restful之前先放一张从之前文章评论里看到的图,我觉得它把soap和rest之间的一些区别形容地非常形象. 在第一篇和第二篇中我们也介绍过,soap协议传递的报文要基于xml格式的soap消 ...
- cocos2d-x 第三篇 基本概念介绍
场景(scene): 也有人叫做屏幕或舞台,是一个独立的程序流,一个程序可以有很多场景但当前运行的场景就只有一个.比如游戏中可以有介绍场景,菜单场景,第一关场景,过场1场景,第二关场景,胜利场景等.一 ...
- 【开源.NET】轻量级内容管理框架Grissom.CMS(第三篇解析配置文件和数据以转换成 sql)
该篇是 Grissom.CMS 框架系列文章的第三篇, 主要介绍框架用到的核心库 EasyJsonToSql, 把标准的配置文件和数据结构解析成可执行的 sql. 该框架能实现自动化增删改查得益于 E ...
- Android UI(三)SlidingMenu实现滑动菜单(详细 官方)
Jeff Lee blog: http://www.cnblogs.com/Alandre/ (泥沙砖瓦浆木匠),retain the url when reproduced ! Thanks ...
- 第三篇——第二部分——第一文 SQL Server镜像简单介绍
版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/DBA_Huangzj/article/details/26951563 原文出处:http://bl ...
- 老猿学5G扫盲贴:推荐三篇介绍HTTP2协议相关的文章
专栏:Python基础教程目录 专栏:使用PyQt开发图形界面Python应用 专栏:PyQt入门学习 老猿Python博文目录 老猿学5G博文目录 5G中的服务化接口调用都是基于HTTP2协议的,老 ...
- SlidingMenu第二篇 --- SlidingMenu常用属性介绍
/** * 设置滑动的屏幕范围 * 1. TOUCHMODE_MARGIN 设置为全屏边缘可滑动 * 2. TOUCHMODE_FULLSCREEN 设置为全屏区域都可以滑动 * 3. TOUCHMO ...
- 从0开始搭建SQL Server AlwaysOn 第三篇(配置AlwaysOn)
从0开始搭建SQL Server AlwaysOn 第三篇(配置AlwaysOn) 第一篇http://www.cnblogs.com/lyhabc/p/4678330.html第二篇http://w ...
- (转) 从0开始搭建SQL Server AlwaysOn 第三篇(配置AlwaysOn)
原文地址: http://www.cnblogs.com/lyhabc/p/4682986.html 这一篇是从0开始搭建SQL Server AlwaysOn 的第三篇,这一篇才真正开始搭建Alwa ...
随机推荐
- C语言面试题分类->宏定义
1.写一个“标准”宏,这个宏输入两个参数并返回较小的一个 答:#define MIN(x, y) ((x)<(y)?(x):(y))//注意x,y要加括号,因为x,y如果有复合运算会出现问题. ...
- css学习_css3伸缩布局 flex布局
1.flex布局 案例一: 案例二: 保证不至于缩放得太小或太大 案例三:flex的值不一定要写成几份,可以写成固定值 案例四: 竖着3等分(父容器按照高度3等分) !!案例 -----用fle ...
- 脚本:截取euroc数据集bag文件的其中一段
脚本:截取euroc数据集bag文件的其中一段 功能:截取euroc数据集bag中的一段供算法测试 python脚本 #!/usr/bin/env python # ----------------- ...
- 记录智能合约solidity编译的坑
在Linux环境下入门写一段solidity编译遇到error和warning,经过一番研究后才得其缘由,下面以一段demo总结一下. pragma solidity ^; // 指定所需的编译器版本 ...
- kubernetes in action - Volumes
Volume解决Kubernetes的存储的问题 对于Pod使用的存储,抽象为volume,volume伴随着Pod的创建而创建,消失而同时消失,不能单独的创建 这样的好处,是存储的塑胶不会因为某个c ...
- mysql5.7.17版本升级源码方式及恢复主主复制
版本升级--自测 从库 ------------ 停止主从复制 stop slave 全库备份 mysqldump -u root -p -S mysql.sock --all-databases&g ...
- spark-sql jdbc操作mysql
SparkConf sparkConf = new SparkConf() .setMaster("local") .setAppName("MySqlTest" ...
- 永久禁止floppy模块开机自动加载
环境:Red Hat Enterprise Linux Server release 7.4 (Maipo) 问题:执行fdisk -l后系统会抓到错误 解决方案: https://access.re ...
- 普通Java Web项目为什么lib包要放在WEB-INF下
首先一个项目要编译好之后才能部署到Tomcat中运行. Tomcat运行时如何找编译好的.class文件呢,其实Tomcat下的web项目有两个预置的classpath(就是能找到.class文件的入 ...
- Java学习--抽象类和接口
https://www.cnblogs.com/dolphin0520/p/3811437.html 抽象类 先了解一下[抽象方法]—一种特殊的方法,只有声明,没有具体的实现 abstract vo ...