Xamarin iOS教程之顯示和編輯文字

2021-09-08 11:06:52 字數 4128 閱讀 6626

在乙個應用程式中,文字是非常重要的。它就是這些不會說話的裝置的嘴巴。通過這些文字,可以很清楚的指定這些應用程式要表達的資訊。以下將為開發者介紹3種關於文字的檢視。

標籤檢視(一般使用uilabel類實現)一般用於在應用程式中為使用者顯示少量的資訊。

【示例2-13】以下就是通過標籤檢視為開發者顯示一首詩的效果。具體步驟如下:

(2)新增影象1.jpg到建立工程的resources資料夾中。

(3)開啟mainstoryboard.storyboard檔案,對主檢視進行設定。效果如圖2.26所示。

2.26  主檢視的效果

需要新增的檢視以及設定如表2-6所示。

表2-6  設定主檢視

(4開啟2-20viewcontroller.cs檔案,編寫**,實現為主檢視新增標籤的功能。**如下:

執行效果如圖2.27所示。

圖2.27  執行效果

注意:在此程式中,使用了textalignment屬性設定了文字在標籤中的對齊方式。使用text屬性設定了標籤中顯示的文字。標籤檢視預設是顯示一行的,但是,也可以將標籤的內容顯示為多行。

【示例2-14】以下將在乙個標籤中顯示3行文字內容。具體步驟如下:

(1(2新增影象1.jpg到建立工程的resources資料夾中。

(3開啟mainstoryboard.storyboard檔案,從工具欄中拖動image view影象檢視到主檢視中,將此檢視的image屬性設定為1.jpg。

(4開啟2-23viewcontroller.cs檔案,編寫**,實現標籤多行顯示的功能。**如下:

執行效果如圖2.28所示。

圖2.28  執行效果

當標籤中的內容過多時,開發者可以對標籤中顯示的內容進行省略,即可以設定內容顯示的格式。在xamarin中有6種風格,如表2-7所示。

表2-7  內容顯示的格式

對於內容顯示格式的設定需要使用到linebreakmode屬性。

【示例2-15】下面將使用linebreakmode屬性讓在標籤中顯示的內容截去中間部分。**如下:

此時執行程式,會看到如圖2.29所示的效果。

圖2.29  執行效果

與標籤檢視不同,文字框檢視(一般使用uitextfield類實現)可以接收使用者的文字輸入,並進行顯示。

【示例2-16】以下將使用文字框來實現qq登入介面的效果。具體步驟如下:

(1(2開啟mainstoryboard.storyboard檔案,對主檢視進行設定。效果如圖2.30所示。

圖2.30  主檢視

需要新增的檢視以及設定如表2-8所示。

表2-8  設定主檢視

(3開啟2-5viewcontroller.cs檔案,編寫**,實現qq登入介面的功能。**如下:

執行效果如圖2.31所示。

圖2.31  執行效果

注意:在此程式中,使用了borderstyle屬性對文字框的邊框風格進行了設定。這些邊框風格如表2-9所示。

表2-9  邊框風格

securetextentry屬性可以使編輯的文字隱藏,以小黑點的形式顯示。此屬性一般使用在輸入密碼時,防止被他人盜取。

限制文字框的輸入長度在輸入手機號碼、銀行卡號碼的應用程式中最常使用。限制文字框的輸入長度需要使用shouldchangecharacters()方法實現。

【示例2-17】下面將只允許使用者在文字框中輸入10個字元。具體的操作步驟如下:

(1(2開啟mainstoryboard.storyboard檔案,拖動檢視庫中的文字框檢視物件到主檢視中,將此檢視物件的name設定為tf。

(3開啟2-34viewcontroller.cs檔案,編寫**,實現限制文字框的輸入長度的功能。**如下:

此時執行程式,會看到如圖2.32所示的效果。

圖2.32  執行效果

注意:在此應用程式中使用者只可以輸入10個字串。

文字框檢視只允許使用者輸入單行文字,如果想要輸入多行文本該怎麼辦呢?這就需要使用文字視**決。uitextview類提供了乙個顯示文字編輯塊的方式。

【示例2-18】以下就是使用文字檢視實現多行文字的輸入。**如下:

執行效果如圖2.33所示。

圖2.33  執行效果

在此示例中,需要注意兩點:

1.鍵盤的消失

當使用者觸控文字檢視區域時,就會顯示鍵盤;當觸控「完成」按鈕後,顯示的鍵盤就會消失。讓鍵盤消失的方式其實很簡單,就是使用resignfirstresponder()方法取消當前的檢視的第一響應功能。

2.文字檢視的委託

當使用者觸控文字框檢視時,會在應用程式輸出視窗輸出「開始編輯文字」;當文字的內容有所改變時,會在應用程式輸出視窗輸出「編輯文字」;當觸控按鈕後,會輸出「結束文字編輯」。這些功能的實現就是通過了設定文字檢視的委託delegate實現的。我們將文字檢視的委託設定為了mytextviewdelegate類,此類繼承了uitextviewdelegate類。如以下的**

在mytextviewdelegate類中重寫了父類uitextviewdelegate中的方法editingstarted()、editingended()、changed(),實現了在應用程式輸出視窗的字串輸出。

OpenGL教程之著色

jeff molofee nehe 的opengl 教程 著色 原 文 lesson 3 colors 譯 者 cker 上一課中我教給您三角形和四邊形的繪製方法。這一課我將教您給三角形和四邊形新增2種不同型別的著色方法。使用單調著色 flat coloring 給四邊形塗上固定的一種顏色。使用平滑...

NumPy教程之(四)

numpy針對陣列 array 的基本數學操作函式一般是逐元素進行的,比如矩陣的加減運算,線性代數上的矩陣運算則有專門的函式,如dot函式等,具體看示例。陣列的有些數 算,如 和 施行的是原位運算,即直接修改覆蓋原來的變數,而不是新建乙個變數,如下所示 當遇到型別不同的陣列進行運算的時候,numpy...

nginx 教程之安裝

docker 安裝映象 docker pull nginx docker 檢視映象 docker images docker 啟動nginx容器 docker run id p 80 80 nginx docker run it p 80 80 nginx docker 檢視啟動容器 docker ...