加入收藏 | 设为首页 | 会员中心 | 我要投稿 PHP编程网 - 黄冈站长网 (http://www.0713zz.com/)- 数据应用、建站、人体识别、智能机器人、语音技术!
当前位置: 首页 > 教程 > 正文

处理Android横竖屏切换数据丢失问题

发布时间:2021-12-15 10:53:23 所属栏目:教程 来源:互联网
导读:Android横竖屏切换时,当前的Activity会被销毁,然后Activity上面的数据将会全部丢失。 如Listview上面每个item的checkbox,横竖屏切换时,复选框就丢失所有选中信息。 解决方案1、 在Androidmanifest.xml的activity标签中加入 android:configChanges=orienta
Android横竖屏切换时,当前的Activity会被销毁,然后Activity上面的数据将会全部丢失。
 
如Listview上面每个item的checkbox,横竖屏切换时,复选框就丢失所有选中信息。
 
解决方案1、
 
在Androidmanifest.xml的activity标签中加入
 
android:configChanges="orientation|keyboardHidden"
 
<activity  
          android:configChanges="orientation|keyboardHidden"  
          android:label="sqltest"  
          android:name=".SqlData"  
            
      </activity>  
解决方案2、
 
强制限制activity在横屏状态或者竖屏状态,不让activity进行横竖屏切换
 
landscape表示横屏
 
portrait表示竖屏
 
<activity  
            
          android:label="sqltest"  
          android:name=".SqlData"  
          android:screenOrientation="landscape" >  
      </activity>  
解决方案3、
 
在Activity里面通过复写
 
onConfigurationChanged方法,实现在不同的屏幕状态下的处理方式。
 
@Override  
    public void onConfigurationChanged(Configuration newConfig) {  
        // TODO Auto-generated method stub   
        super.onConfigurationChanged(newConfig);  
        /*
         * 横竖屏检测
         */  
        if (this.getResources().getConfiguration().orientation  
  
        == Configuration.ORIENTATION_LANDSCAPE) {  
  
            // 当前为横屏   
            //实现代码   
  
        }  
  
        else if (this.getResources().getConfiguration().orientation  
  
        == Configuration.ORIENTATION_PORTRAIT) {  
  
            // 当前为竖屏   
            //实现代码   
  
        }  
  
        /*
         *  实体键盘状态检测
         */  
  
        if (newConfig.hardKeyboardHidden  
  
        == Configuration.HARDKEYBOARDHIDDEN_NO) {  
  
            // 实体键盘处于推出状态   
            //实现代码   
  
        }  
  
        else if (newConfig.hardKeyboardHidden  
  
        == Configuration.HARDKEYBOARDHIDDEN_YES) {  
  
            // 实体键盘处于合上状态   
            //实现代码   
  
        }  
  
    }  
 

(编辑:PHP编程网 - 黄冈站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读