Programim dhe zhvillim, javascript, python, php, html

si të vendosni ngjyrën e sfondit në transparente, në mënyrë që të tregojë informacionin e operatorit, kohën dhe statusin e baterisë

Unë jam duke përdorur WKWebView për të hapur faqet e internetit në aplikacionin tim Swift 3+. Unë NUK jam duke përdorur storyboard ose XIB.

Kur ngarkohet pamja ime në ueb, ai fsheh informacionin e operatorit, treguesit e fuqisë së sinjalit të rrjetit celular (pika), treguesin e lidhjes WiFi/4G, kohën dhe statusin e baterisë për shkak të ngjyrës së zezë të sfondit (i caktuar si parazgjedhje)

Unë dua të shfaq pamjen time të internetit poshtë shiritit të statusit të lartë. Kam marrë lartësinë e shiritit të statusit duke përdorur UIApplication.shared.statusBarFrame.height (prisja që të ishte 20 dhe e konfirmova)

Si mund t'i bëj që të dyja të duken mirë? (me sfond të bardhë/transparencë) në mënyrë që përdoruesit të mund të shohin informacionin e shiritit të statusit në krye dhe më pas pamjen e internetit siç pritej.

Controller.swift:

import UIKit
import WebKit

class MyWebViewController: UIViewController, WKNavigationDelegate {
    var urlString:String? = nil
    let myWebView = WKWebView(frame:CGRect(x: 0, y: 32+UIApplication.shared.statusBarFrame.height, width: UIScreen.main.bounds.width, height: UIScreen.main.bounds.height-32-UIApplication.shared.statusBarFrame.height))
    let button = UIButton(frame: CGRect(x:UIScreen.main.bounds.width - 100,y:50,width:50,height:50))
    let navpath = UITextView(frame:CGRect(x: 0, y: UIApplication.shared.statusBarFrame.height, width: UIScreen.main.bounds.width, height: 32))

    override func viewDidLoad() {
        super.viewDidLoad()
        self.view.isOpaque=true
        self.view.backgroundColor = UIColor.clear
        print("status bar height : \(UIApplication.shared.statusBarFrame.height)")
        button.backgroundColor = UIColor.red
        button.setTitle("close", for: .normal)
        myWebView.navigationDelegate = self
        myWebView.autoresizingMask = [.flexibleWidth, .flexibleHeight]
        myWebView.load(NSURLRequest(url: targetUrl as URL) as URLRequest)
        view.addSubview(myWebView)
        button.autoresizingMask = [.flexibleWidth, .flexibleHeight]
        navpath.autoresizingMask = [.flexibleWidth, .flexibleHeight]
        view.addSubview(navpath)
        myWebView.addSubview(button)
    }
    func webView(_ webView: WKWebView, decidePolicyFor navigationAction: WKNavigationAction, decisionHandler: @escaping (WKNavigationActionPolicy) -> Void) {
        //print(navigationAction.navigationType)
        let navReq = navigationAction.request
        let targetUrl = navReq?.url
        let link = targetUrl?.absoluteString
        print("targetURL : \(targetUrl)\n link : \(link)")
        navpath.text=link
        //self.myWebView.load(navReq)
        decisionHandler(.allow)
    }
}

në rrotullim, treguesi i gjelbër i baterisë fshihet. do të doja ta rregulloja edhe atë. navpath (mbajtësi i tekstit të shiritit të adresave) dhe butoni (mbyll) gjithashtu nuk vendosen gabimisht, mendoj se më duhet autolayout/constraintmanager ose diçka tjetër.

mostrat aktuale po ngarkohen duckduckgo:

portret

portrait

peizazh

landscape

gjithashtu, më njoftoni nëse UITextView është një zgjedhje e mirë për të shfaqur shiritin e adresave (URL e faqes së internetit), apo duhet të përdor UILabel ose diçka tjetër, ndoshta më të mirë, navigationBar? por, mendoj se kjo do të kërkonte storyboard/xib.

13.02.2017

Përgjigjet:


1

Ju mund të vendosni prefferedStatusBarStyle për pamjen tuaj: https://developer.apple.com/reference/uikit/uiviewcontroller/1621416-preferredstatusbarstyle

Në ViewController tuaj:

override var preferredStatusBarStyle: UIStatusBarStyle {
    return .lightContent
}

Nëse pamje të ndryshme kanë stile të ndryshme të shiritit të statusit, mund ta përditësoni duke përdorur setNeedsStatusBarAppearanceUpdate(), p.sh. në viewDidAppear.

https://developer.apple.com/reference/uikit/uiviewcontroller/1621354-setneedsstatusbarappearanceupdat

13.02.2017
  • mund të më ndihmoni të rregulloj edhe problemin e rrotullimit? 13.02.2017
  • Provoni të ktheni false ndërsa përdorni override var prefersStatusBarHidden: Bool { } 14.02.2017
  • Materiale të reja

    Masterclass Coroutines: Kapitulli-3: Anulimi i korutinave dhe trajtimi i përjashtimeve.
    Mirë se vini në udhëzuesin gjithëpërfshirës mbi Kotlin Coroutines! Në këtë seri artikujsh, unë do t'ju çoj në një udhëtim magjepsës, duke filluar nga bazat dhe gradualisht duke u thelluar në..

    Faketojeni derisa ta arrini me të dhënat false
    A e gjeni ndonjëherë veten duke ndërtuar një aplikacion të ri dhe keni nevojë për të dhëna testimi që duken dhe duken më realiste ose një grup i madh të dhënash për performancën e ngarkesës...

    Si të përdorni kërkesën API në Python
    Kërkesë API në GitHub për të marrë depot e përdoruesve duke përdorur Python. Në këtë artikull, unë shpjegoj procesin hap pas hapi për të trajtuar një kërkesë API për të marrë të dhëna nga..

    Një udhëzues hap pas hapi për të zotëruar React
    Në këtë artikull, do të mësoni se si të krijoni aplikacionin React, do të mësoni se si funksionon React dhe konceptet thelbësore që duhet të dini për të ndërtuar aplikacione React. Learning..

    AI dhe Psikologjia — Pjesa 2
    Në pjesën 2 të serisë sonë të AI dhe Psikologji ne diskutojmë se si makineritë mbledhin dhe përpunojnë të dhëna për të mësuar emocione dhe ndjenja të ndryshme në mendjen e njeriut, duke ndihmuar..

    Esencialet e punës ditore të kodit tim VS
    Shtesat e mia të preferuara - Git Graph 💹 Kjo shtesë është vërtet e mahnitshme, e përdor përpara se të filloj të punoj për të kontrolluar dy herë ndryshimet dhe degët më të fundit, mund të..

    Pse Python? Zbulimi i fuqisë së gjithanshme të një gjiganti programues
    Në peizazhin gjithnjë në zhvillim të gjuhëve të programimit, Python është shfaqur si një forcë dominuese. Rritja e tij meteorike nuk është rastësi. Joshja e Python qëndron në thjeshtësinë,..