Android UI开发第二十八篇——Fragment中使用左右滑动菜单

简介:

    Fragment实现了Android UI的分片管理,尤其在平板开发中,好处多多。这一篇将借助Android UI开发第二十六篇——Fragment间的通信、 Android UI开发第二十七篇——实现左右划出菜单 来实现。看图1的效果,左边使用LeftFragment实现,中间使用的CenterFragment实现。



public class SlidingActivity extends FragmentActivity implements LeftShowCenter{ 	private SlidingMenu mSlidingMenu; 	private CenterFragment centerFragment; 	@Override 	protected void onCreate(Bundle arg0) { 		super.onCreate(arg0); 		setContentView(R.layout.main);  		DisplayMetrics dm = new DisplayMetrics(); 		getWindowManager().getDefaultDisplay().getMetrics(dm);  		mSlidingMenu = (SlidingMenu) findViewById(R.id.slidingMenu); 		mSlidingMenu.setLeftWidth((dm.widthPixels / 5) * 2); 		mSlidingMenu.setRightWidth((dm.widthPixels / 5) * 3);  		View leftView = getLayoutInflater().inflate(R.layout.left_frame, null); 		View rightView = getLayoutInflater().inflate(R.layout.right_frame, null); 		View centerView = getLayoutInflater().inflate(R.layout.center_frame, null);  		mSlidingMenu.setLeftView(leftView); 		mSlidingMenu.setRightView(rightView); 		mSlidingMenu.setCenterView(centerView);  		FragmentTransaction t = this.getSupportFragmentManager() 				.beginTransaction(); 		LeftFragment leftFragment = new LeftFragment(); 		t.replace(R.id.left_frame, leftFragment);  		RightFragment rightFragment = new RightFragment(); 		t.replace(R.id.right_frame, rightFragment);  		centerFragment = new CenterFragment(); 		t.replace(R.id.center_frame, centerFragment); 		t.commit(); 	}  	public void showLeft() { 		mSlidingMenu.showLeftView(); 	}  	public void showRight() { 		mSlidingMenu.showRightView(); 	}  	public void showCenter() { 		mSlidingMenu.showCenterView(); 	}  	@Override 	public void leftShowCenter(int id) { 		// TODO Auto-generated method stub 		 		if(centerFragment!=null){ 			centerFragment.updateView(id); 		} 	} }

       SlidingActivity继承自FragmentActivity,实现了LeftShowCenter的接口方法,LeftShowCenter接口的主要目的是实现Fragment间的通信。



                 图1


/**
* @author 张兴业
* android开发进阶群:241395671
*/



     本文转自xyz_lmn51CTO博客,原文链接:http://blog.51cto.com/xyzlmn/1230750,如需转载请自行联系原作者


相关文章
|
25天前
|
搜索推荐 Android开发 开发者
探索安卓开发中的自定义视图:打造个性化UI组件
【10月更文挑战第39天】在安卓开发的世界中,自定义视图是实现独特界面设计的关键。本文将引导你理解自定义视图的概念、创建流程,以及如何通过它们增强应用的用户体验。我们将从基础出发,逐步深入,最终让你能够自信地设计和实现专属的UI组件。
|
17天前
|
UED
「Mac畅玩鸿蒙与硬件28」UI互动应用篇5 - 滑动选择器实现
本篇将带你实现一个滑动选择器应用,用户可以通过滑动条选择不同的数值,并实时查看选定的值和提示。这是一个学习如何使用 Slider 组件、状态管理和动态文本更新的良好实践。
32 1
「Mac畅玩鸿蒙与硬件28」UI互动应用篇5 - 滑动选择器实现
|
8天前
|
XML 搜索推荐 前端开发
安卓开发中的自定义视图:打造个性化UI组件
在安卓应用开发中,自定义视图是一种强大的工具,它允许开发者创造独一无二的用户界面元素,从而提升应用的外观和用户体验。本文将通过一个简单的自定义视图示例,引导你了解如何在安卓项目中实现自定义组件,并探讨其背后的技术原理。我们将从基础的View类讲起,逐步深入到绘图、事件处理以及性能优化等方面。无论你是初学者还是有经验的开发者,这篇文章都将为你提供有价值的见解和技巧。
|
22天前
|
XML 前端开发 Android开发
Android:UI:Drawable:View/ImageView与Drawable
通过本文的介绍,我们详细探讨了Android中Drawable、View和ImageView的使用方法及其相互关系。Drawable作为图像和图形的抽象表示,提供了丰富的子类和自定义能力,使得开发者能够灵活地实现各种UI效果。View和ImageView则通过使用Drawable实现了各种图像和图形的显示需求。希望本文能为您在Android开发中使用Drawable提供有价值的参考和指导。
34 2
|
1月前
|
开发框架 JavaScript 前端开发
HarmonyOS UI开发:掌握ArkUI(包括Java UI和JS UI)进行界面开发
【10月更文挑战第22天】随着科技发展,操作系统呈现多元化趋势。华为推出的HarmonyOS以其全场景、多设备特性备受关注。本文介绍HarmonyOS的UI开发框架ArkUI,探讨Java UI和JS UI两种开发方式。Java UI适合复杂界面开发,性能较高;JS UI适合快速开发简单界面,跨平台性好。掌握ArkUI可高效打造符合用户需求的界面。
99 8
|
2月前
|
JavaScript API 开发者
掌握ArkTS,打造HarmonyOS应用新视界:从“Hello World”到状态管理,揭秘鸿蒙UI开发的高效秘诀
【10月更文挑战第19天】ArkTS(ArkUI TypeScript)是华为鸿蒙系统中用于开发用户界面的声明式编程语言,结合了TypeScript和HarmonyOS的UI框架。本文介绍ArkTS的基本语法,包括组件结构、模板和脚本部分,并通过“Hello World”和计数器示例展示其使用方法。
77 1
|
2月前
|
缓存 测试技术 C#
使用Radzen Blazor组件库开发的基于ABP框架炫酷UI主题
【10月更文挑战第20天】本文介绍了使用 Radzen Blazor 组件库开发基于 ABP 框架的炫酷 UI 主题的步骤。从准备工作、引入组件库、设计主题、集成到 ABP 框架,再到优化和调试,详细讲解了每个环节的关键点和注意事项。通过这些步骤,你可以打造出高性能、高颜值的应用程序界面。
|
7月前
|
Android开发
Android基础知识:什么是Fragment?与Activity的区别是什么?
Android基础知识:什么是Fragment?与Activity的区别是什么?
1298 54
|
Android开发
Android 中Fragment和Activity之间的通信
Android 中Fragment和Activity之间的通信
70 0
|
Android开发
【Android】Fragment跳转Activity时携带数据
在网上你可以看到很多Fragment都是用接口回调来携带数据跳转到Activity。 我觉得好麻烦,于是你们可以用我下面的方法 而我们可以直接使用下面这个方法:
129 0