iOS:文字相關(18-01-22更),ios18-01-22

來源:互聯網
上載者:User

iOS:文字相關(18-01-22更),ios18-01-22

0、寫在前面

1、小技巧

  UILabel類:

    1-1-1)、設定行間距富文本,有省略符號要求的,需要再次設定省略(初始化時設定的會失效)。

  UITextField類:

    1-2-1)、清空按鈕。

  UITextView類:

    1-3-1)、UITextView只能x軸置中,y軸需要手動調。

 

  UITextField、UITextView類共有:

    1-4-1)、在鍵盤上面顯示一個右邊有“完成”按鈕的ToolBar。

    1-4-2)、協議 UITextInputTraits(自動大寫、錯誤修正、鍵盤相關)。

 

 

 

 

 

0、寫在前面

  1、UILabel:

    1、沒有內建選擇、複製功能

    2、無預留位置

    3、多行

  2、UITextField:

    1、

    2、有預留位置

    3、一行

 

  3、UITextView:

    1、

    2、無預留位置

    3、多行

 

1、小技巧:

  UILabel類: 

    1-1-1)、設定行間距富文本,有省略符號要求的,需要再次設定省略(初始化時設定的會失效)。

// 最後面的,以"..."結束self.contentLabel.lineBreakMode = NSLineBreakByTruncatingTail;

 

  UITextField類:

    1-2-1)、清空按鈕。 

// 當編輯時才出現self.inputTF.clearButtonMode = UITextFieldViewModeWhileEditing;

 

  UITextView類:

    1-3-1)、UITextView只能x軸置中,y軸需要手動調

        --修改自簡書 《IOS UITextView內容垂直置中方法》 --木頭Lee 

- (void)contentSizeToFit{    //先判斷一下有沒有文字(沒文字就沒必要設定置中了)    if([msgTextView.text length]>0)    {        //textView的contentSize屬性        CGSize contentSize = msgTextView.contentSize;        //textView的內邊距屬性        UIEdgeInsets offset;                //如果文字內容高度沒有超過textView的高度        if(contentSize.height <= msgTextView.height)        {            //textView的高度減去文字高度除以2就是Y方向的位移量,也就是textView的上內邊距            CGFloat offsetY = (msgTextView.height - contentSize.height)/2;            offset = UIEdgeInsetsMake(offsetY, 0, 0, 0);        }                //根據前面計算設定textView的ContentSize和Y方向位移量        [msgTextView setContentInset:offset];    }}

 

  UITextField、UITextView類共有:

    1-4-1)、在鍵盤上面顯示一個右邊有“完成”按鈕的ToolBar。

UIToolbar *numberToolBar= [[UIToolbar alloc]initWithFrame:CGRectMake(0, 0, kSCREEN_WIDTH, 40)];numberToolBar.items = [NSArray arrayWithObjects:                           [[UIBarButtonItem alloc]initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:nil action:nil],                           [[UIBarButtonItem alloc]initWithTitle:@"完成" style:UIBarButtonItemStyleDone target:self action:@selector(doneWithNumberPad)],                           nil];//numberToolBar.tintColor=[UIColor redColor];self.inputTF.inputAccessoryView = numberToolBar;- (void)doneWithNumberPad{}

 

    1-4-2)、協議 UITextInputTraits(自動大寫、錯誤修正、鍵盤相關):

      ①、autocapitalizationType:自動首字母大寫

      ②、autocorrectionType:自動錯誤修正

      ③、spellCheckingType:拼字檢查

      ④、keyboardType:鍵盤類型

      ⑤、keyboardAppearance:鍵盤顏色樣式

      ⑥、returnKeyType:返回的按鍵“字”:發送、下一個...

      ⑦、enablesReturnKeyAutomatically:當文字輸入長度為0,失能鍵盤的return,但文字輸入長度大於0,使能鍵盤的return

      ⑧、secureTextEntry:密碼輸入,輸完一段時間、或輸入下一個字型,會變成*

      ⑨、textContentType:把自己的通訊錄內容,變成鍵盤上的一個ToolBar按鈕,快速填入。第三方鍵盤好像不支援。

 

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.