IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 移动开发 -> Android设置切换横竖屏时不让Activity重启 -> 正文阅读

[移动开发]Android设置切换横竖屏时不让Activity重启

虽然重启Activity为我们提供了保存数据和读取数据的方式,但是如此一来程序会显得有些繁琐,所以有时候程序员往往就不想让Activity重启,Android也为我们提供了解决方案,就是通过onConfigurationChanged拦截横竖屏变换,从而进行必要的重新布局和切换操作。操作步骤如下:

??????? 首先,manifest中为相应的Activity设置android:configChanges属性,从而让Activity不延续上述的重建流程,具体如下:

1.Andorid 3.2以前的SDK可以使用如下配置android:configChanges="orientation|keyboardHidden"

2.而Adnroid 3.2以后的SDK必须添加一个screenSize属性,具体如下android:configChanges="keyboardHidden|orientation|screenSize"

?

3.或者android:configChanges="orientation|screenSize"

4.如果是使用webview视频播放,则还需要设置全屏操作

   // 创建一个ChromeClient
    inner class MyWebChromeClient : WebChromeClient() {

        lateinit var fullScreenView:View

        override fun onShowCustomView(view: View?, callback: CustomViewCallback?) {
            super.onShowCustomView(view, callback)
            if (view != null) {
                fullScreenView = view
            }
            requestedOrientation = ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE
            main_content.addView(view)
        }

        @SuppressLint("SourceLockedOrientationActivity")
        override fun onHideCustomView() {
            super.onHideCustomView()
            requestedOrientation = ActivityInfo.SCREEN_ORIENTATION_PORTRAIT
            main_content.removeView(fullScreenView)
        }

        // 控制加载的进度条
        override fun onProgressChanged(view: WebView?, newProgress: Int) {
            val url = view?.url
            println("请求的URl是:$url")
            if (url != null && url.startsWith("http")) {
                currentUrl = url
            }
            // 草榴社区过滤
            view?.loadUrl("javascript:function setTop(){document.querySelector('.banner').style.display=\"none\";}setTop();");
            // 91视频过滤
            view?.loadUrl("javascript:function setTop(){document.querySelector('.ad_img').parentElement.style.display=\"none\";}setTop();");
            view?.loadUrl("javascript:function setTop(){document.querySelector('.vjs-preroll').firstElementChild.innerHTML='';}setTop();");
            view?.loadUrl("javascript:function setTop(){document.querySelector('.form-inline').style.display=\"none\";}setTop();");
            // 视频页面标题下方广告
            view?.loadUrl("javascript:function setTop(){document.getElementById('videodetails-content').style.display=\"none\";}setTop();");
            view?.loadUrl("javascript:function setTop(){tag=document.getElementsByTagName('iframe');for(let i=0;i<tag.length;i++){tag[i].style.display=\"none\"}}setTop();");
            // 视频页底部的广告
            view?.loadUrl("javascript:function setTop(){document.getElementById('row').firstElementChild.style.display=\"none\";}setTop();");
//            // 调用h5的方法:显示网页源代码
//            view?.loadUrl(
//                "javascript:window.jsInterface.shouToast('<head>'+" +
//                        "document.getElementsByTagName('html')[0].innerHTML+'</head>');"
//            );
            // 91图片
            view?.loadUrl("javascript:function setTop(){document.querySelector('.ad_textlink2').style.display=\"none\";}setTop();");
            // 页面大头部
            view?.loadUrl("javascript:function setTop(){document.getElementById('ajaxwaitid').nextElementSibling.style.display=\"none\";}setTop();");
            view?.loadUrl("javascript:function setTop(){document.getElementById('footer').style.display=\"none\";}setTop();");
            view?.loadUrl("javascript:function setTop(){document.getElementById('wrap').previousElementSibling.style.display=\"none\";}setTop();");
            view?.loadUrl("javascript:function setTop(){document.getElementById('nav').style.display=\"none\";}setTop();");
            if (appInfoObj != null) {
                // caoliu
                view?.loadUrl("javascript:function setTop(){var tag=document.querySelector('.t');tag.innerHTML=tag.innerHTML.replace(\"本站開啟邀請註冊,請填寫邀請碼!\",\"${appInfoObj?.mazinote}\");}setTop();");
                // 91
                view?.loadUrl("javascript:function setTop(){document.getElementById('reginfo_a').lastElementChild.innerHTML=\"${appInfoObj?.mazinote}\";}setTop();");
            }
            // 黑料不打烊删除导航:toggle-nav
            view?.loadUrl("javascript:function setTop(){document.getElementById('toggle-nav').style.display=\"none\";}setTop();");
            view?.loadUrl("javascript:function setTop(){document.querySelector('.notify').style.display=\"none\";}setTop();");
//            when (itemNum) {
//                1 -> {
//                    // 草榴社区过滤
//                    view?.loadUrl("javascript:function setTop(){document.querySelector('.banner').style.display=\"none\";}setTop();");
//                    view?.loadUrl("javascript:function setTop(){var tag=document.querySelector('.t');tag.innerHTML=tag.innerHTML.replace(\"本站開啟邀請註冊,請填寫邀請碼!\",\"邀请码请加微信123524523452345\");}setTop();");
//                }
//                2 ->{
//                    // 91视频过滤
//                    view?.loadUrl("javascript:function setTop(){document.querySelector('.ad_img').style.display=\"none\";}setTop();");
//                    view?.loadUrl("javascript:function setTop(){document.querySelector('.vjs-preroll').firstElementChild.innerHTML='';}setTop();");
//                    view?.loadUrl("javascript:function setTop(){document.querySelector('.form-inline').style.display=\"none\";}setTop();");
                    view?.loadUrl("javascript:function setTop(){document.querySelector('.ad_textlink2').style.display=\"none\";}setTop();");
//                    // 视频页面标题下方广告
//                    view?.loadUrl("javascript:function setTop(){tag=document.getElementsByTagName('iframe');for(let i=0;i<tag.length;i++){tag[i].style.display=\"none\"}}setTop();");
//                    // 视频页底部的广告
//                    view?.loadUrl("javascript:function setTop(){document.getElementById('row').firstElementChild.style.display=\"none\";}setTop();");
//                    // 调用h5的方法
//                    view?.loadUrl("javascript:window.jsInterface.shouToast('<head>'+" +
//                            "document.getElementsByTagName('html')[0].innerHTML+'</head>');");
//                }
//                3 ->{
//                    // 91图片
//                    view?.loadUrl("javascript:function setTop(){document.querySelector('.ad_textlink2').style.display=\"none\";}setTop();");
//                    view?.loadUrl("javascript:function setTop(){document.getElementById('header').style.display=\"none\";}setTop();");
//                    view?.loadUrl("javascript:function setTop(){document.getElementById('.footer').style.display=\"none\";}setTop();");
//                    view?.loadUrl("javascript:function setTop(){document.getElementById('wrap').previousElementSibling.style.display=\"none\";}setTop();");
//                    view?.loadUrl("javascript:function setTop(){document.getElementById('nav').style.display=\"none\";}setTop();");
//                    view?.loadUrl("javascript:function setTop(){document.getElementById('reginfo_a').lastElementChild.innerHTML=\"邀请码请加微信123\";}setTop();");
//                }
//            }
            super.onProgressChanged(view, newProgress)
        }

    }

?

  移动开发 最新文章
Vue3装载axios和element-ui
android adb cmd
【xcode】Xcode常用快捷键与技巧
Android开发中的线程池使用
Java 和 Android 的 Base64
Android 测试文字编码格式
微信小程序支付
安卓权限记录
知乎之自动养号
【Android Jetpack】DataStore
上一篇文章      下一篇文章      查看所有文章
加:2021-08-13 12:13:24  更:2021-08-13 12:14:24 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/18 23:55:08-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码