`
buddie
  • 浏览: 182645 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

转屏时更换布局

阅读更多

Activity:

在程序启动时,先获得当前屏幕的状态,并设置相应的布局文件。

public void onCreate(Bundle savedInstanceState) {
    	super.onCreate(savedInstanceState); 
		requestWindowFeature(Window.FEATURE_CUSTOM_TITLE); //注意顺序
		Configuration newConfig=getResources().getConfiguration();//获取当前应用配置
        if(newConfig.orientation==Configuration.ORIENTATION_LANDSCAPE){    
            //横屏   
            setContentView(R.layout.main_h);    
        }else{    
            //竖屏
            setContentView(R.layout.main);    
        }   
        getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE,R.layout.title);  //注意顺序
        getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN);
...

 在程序运行时,当屏幕状态发生改变时,更改布局文件。

//重写 onConfigurationChanged方法,防止转屏时Activity被销毁重建
public void onConfigurationChanged(Configuration newConfig) {
		super.onConfigurationChanged(newConfig);
		LinearLayout mainL=(LinearLayout)findViewById(R.id.mainLL);
		if (this.getResources().getConfiguration().orientation == Configuration.ORIENTATION_LANDSCAPE) {
			//横屏
			setContentView(R.layout.main_h);
		} else if (this.getResources().getConfiguration().orientation == Configuration.ORIENTATION_PORTRAIT) {
			//竖屏
			setContentView(R.layout.main);
		}
	}

 最后修改一下AndroidManifest.xml中Activity的配置,给目标Activity加上下面这条属性:

android:configChanges="orientation|keyboardHidden"
 

 

分享到:
评论

相关推荐

    [Android] 使用Include布局+Fragment滑动切换屏幕(源代码)

    该资源主要是参考博客[Android] 使用Include布局+Fragment滑动切换屏幕的文章 主要讲述使用Include布局,同时像微信一样实现动态切换屏幕的效果.免费资源希望对大家有所帮助.

    多文触屏输入法免费版

    可以定制皮肤、皮肤更换,自定义Layout(键盘布局)。 支持记忆、调频。 可以随意修改输入法面板的尺寸,可以很好适应各种尺寸的屏幕。 有丰富的符号表供使用。 界面支持半透明,即使被输入法档住的内容也可以看到。 ...

    android横竖屏切换不重启activity解决方案

    部分网友会发现Activity在切换到后台或布局从横屏LANDSCAPE切换到PORTRAIT,会重新切换Activity会触发一次onCreate方法,使用其他的方法同样可以实现

    栅栏桌面Fences1.0简体中文版.rar

    软件介绍: 可以自由选择顶部、底部、左右布局图,定制标签显示,双击桌面隐藏/显示桌面图标。...为了保存您的布局,如果您经常更换布局,您可以在"更多快照"栏里设置您需要恢复的个性化栅栏设计。

    基于JavaScript的前端ECharts图表可视化大屏开发案例源码+项目使用说明.zip

    窗口缩放时图表自动缩放无需刷新,可通过拖动浏览器窗口大小测试。 图表定时刷新重绘效果,可分别指定需要和不需要刷新的图表。这里仅是前端展示用,也可配合异步加载数据后重绘图表。 页面显示时钟、城市定位和天气...

    CollectionView 自定义布局(相册)(iPhone源代码)

    来源: github/CustomLayout Licence: MIT 作者: Aeron_Xie 1.圆形布局 2.线性布局 3.点击删除cell 4.点击屏幕更换布局

    国笔输入法

    更换布局功能,根据您的操作习惯,选择适合您的布局。 主要功能: 支持拼音、笔画、全屏手写等简体中文模式。 支持注音、仓颉、笔画、手写等繁体中文模式。 内嵌丰富的Emoji表情。 换肤功能,选择您喜欢的主题。 ...

    WordPress宽屏主题单栏动漫风格 v3.9

    易秀购主题网分享一款单栏的wordpress动漫主题,单栏的风格显得大气而且主题明确,让人感觉界面清爽,适合做动漫博客主题,该主题全屏显示ACG风格,而且还是响应式的布局主题,可谓很前卫时尚,适合简单做站的朋友们...

    JIDE Docking Framework(窗口框架) 开发员技术手册

    杰笛窗口框架 Docking Framework 杰笛窗口框架提供了一个功能强大且简单易用的工具窗口解决方案,正如用户在Visual Studio .NET IDE或者Eclipse IDE看到的一样。如果您的应用程序很简单,可能没有...可以随时更换布局

    窗口布局调整器「Window Layout Resizer」-crx插件

    将当前窗口调整为不同的可...另外,如果更换显示器,则布局设置工作正常(百分比被存储而不是绝对值)。 这可以用来将您的屏幕分成不同的部分,并将不同的网页放在不同的区域。 欲了解更多详情或发布建议,请使用: ...

    FullDraggableDrawer:使Android DrawerLayout可以在全屏范围内实时拖出

    FullDraggableDrawer 使DrawerLayout可以在全屏范围内实时拖动/拉...更换主要布局DrawerLayout与FullDraggableContainer (或者你可以将其添加为一个新的包装/层): < androidx .drawerlayout.widget.DrawerLayout

    android开发实例大全_王东华

    实例044: 来电时自动发送信息提醒 115 实例045: 获取手机存储卡的容量 119 实例046: 操作存储卡和内存卡中的数据 122 实例047: 设置闹钟 129 实例048: 实现黑名单来电自动静音处理 135 实例049: 设置一个自动...

    Android天气预报应用

    (4)在用户改变手机方向导致屏幕在横屏和竖屏之间切换时,能够根据实际情况对界面布局进行调整。 (5)如果不能查询到相应城市的天气信息,则需要进行异常判断和处理 (6)提供更换皮肤的功能(让用户在内置皮肤或...

    阿香婆PDF编辑器Ashampoo PDF Pro.rar

    必要时还能进行加密来保护自己的产权,现在大家就可以像编辑Word文档一样轻松编辑PDF文件,强悍的转换功能外加成熟的OCR光学识别引擎完全可以轻松满足pdf转word或pdf转ppt等需求,当大家亲身体验了阿香婆PDF编辑软件...

    LWUIT_3_1英文原版.part1

    LWUIT类似Swing 的MVC架构, 支持多种布局(Layouts), 皮肤更换, 字体, 触摸屏, 动画效果, Rich控件, 3D集成, Painter, 模式对画框, I18N/L10N等。  Sun在2008年的JavaOne会议上向开发者社区推荐了LWUIT,展示了...

    谷歌汇率转换小工具-crx插件

    @ChangeLog:+ 0.4.5 20190409 * 大幅降低首屏加载时间 * 调整界面布局与文字大小+ 0.4.4 20190327 * 增加打开时自动获取当前选中数字的功能+ 0.4.3 20190326 * 货币过滤器支持部分搜索和货币代码搜索 * 增加历史记录...

    LWUIT_3_1英文原版.part2

    LWUIT类似Swing 的MVC架构, 支持多种布局(Layouts), 皮肤更换, 字体, 触摸屏, 动画效果, Rich控件, 3D集成, Painter, 模式对画框, I18N/L10N等。  Sun在2008年的JavaOne会议上向开发者社区推荐了LWUIT,展示了...

    EasyBoot_v6.5.2.695 中文注册版

     8、可选择输入字母转小写或大写模式。  9、可在每个菜单项下定义光标键的灵活跳转方式,从而支持任意布局的屏幕菜单。  10、支持子菜单,可制作十分复杂的启动光盘。  11、EasyBoot方便而强大的编辑功能  -...

    Nova Launcher Prime 6.1.5.apk

    更改图标,布局,动画等。 Nova Launcher Prime特点: 手势 - 在主屏幕上滑动,捏合,双击等等,打开您喜欢的应用程序 未读计数 - 绝不会错过任何消息。使用TeslaUnread插件的环聊,短信,Gmail等未读计数徽章 ...

Global site tag (gtag.js) - Google Analytics