Android 有关横竖屏

1、如何使得横竖屏时显示不同的布局资源?

在res文件夹下,新建一下layout-land文件夹,把横屏时要显示的布局资源文件放这里,当横屏时,Android会自动使用。但需要注意的是,程序在切换时可能会重新执行onCreate,可以通过重写onConfigurationChanged(Configuration newConfig)方法来控制,但重写之前要在AndroidManifest文件中设置Acitivity的属性android:configChanges="orientation",表示当方向改变时,程序自己来处理,而不是默认的重启Activity。

类似的,当要适应不同的分辨率时,也在res文件夹下建名如layout-480x320的文件夹,注意中间是小写的x,较大的数字要放在x前面。

2、在代码中如何判断当前是横屏还是竖屏?

if (this.getResources().getConfiguration().orientation == Configuration.ORIENTATION_LANDSCAPE) { 
     // 横屏

else if (this.getResources().getConfiguration().orientation == Configuration.ORIENTATION_PORTRAIT) { 
    // 竖屏
}

3、开发过程中如何切换模拟器的横竖屏?            

      android模拟器启动后,可以使用快捷键Ctrl+F12或Ctrl+F11来切换。好像按右边的Ctrl会不管用,要按左边的。

4、如何禁止横竖屏自动切换?

     方法1,我们可以在配置文件AndroidMenifast.xml中,这样写:

    <activity android:name="YourActivity"
        android:screenOrientation="landscape"></activity> 就可以实现,无论怎样都是横屏,将landscape改成portrait则是竖屏

   方法2, 我们还可以在代码中设置:

  在onCreate方法中写上:setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT); 则Activity就永远是竖屏显示了。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值