簡體   English   中英

Swift:如何在模式設置為僅時間的情況下調整日期選擇器的寬度

[英]Swift: How to adjust width of Date Picker with mode set to Time Only

日期選擇器組件右側似乎有一些浪費的空間:

在此處輸入圖片說明

增加或減少其框架的寬度/高度值都沒有關系; 它保持標准尺寸。

    let datePicker = UIDatePicker(frame: CGRect(x: 20, y: 100, width: 500, height: 200))
    datePicker.datePickerMode = .date
    view.addSubview(datePicker)
    

我的問題是,可以調整嗎?

編輯:所以我設法找到了它的簡短形式,但這只能通過故事板添加。

這是視圖:

在此處輸入圖片說明

第一個選擇器以編程方式添加,第二個選擇器通過故事板添加。 出於某種原因,我無法使以編程方式創建的選擇器變小...

您可以詢問日期選擇器哪個尺寸就足夠了;)

選項 A

let datePicker = UIDatePicker()
datePicker.datePickerMode = .date

// Let it size itself to its preferred size
datePicker.sizeToFit()
// Set the frame without changing the size
datePicker.frame = .init(x: 20, y: 100, width: datePicker.bounds.size.width, height: datePicker.bounds.size.height)

view.addSubview(datePicker)

選項 B

let datePicker = UIDatePicker()
datePicker.datePickerMode = .date

// Ask the picker for its preferred size
let datePickerPreferredSize = datePicker.systemLayoutSizeFitting(view.bounds.size)
// Set the frame using that size
datePicker.frame = .init(x: 20, y: 100, width: datePickerPreferredSize.width, height: datePickerPreferredSize.height)

view.addSubview(datePicker)

您可以在 IB 中將寬度更改為 ~135,例如:

在此處輸入圖片說明

        datePickerOutlet.datePickerMode = .date
        datePickerOutlet.preferredDatePickerStyle = .compact

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM