[英]Changing the action bound to the send button in MFMessageComposeViewController
[英]Highlighting the SEND button in MFMessageComposeViewController
我已經生成了一個MFMessageComposeViewController
來發送預配置的 SMS 消息,現在我想將用戶的注意力吸引到發送按鈕上。 用戶已經從應用程序中啟動了“發送消息”過程,但他們必須隨后按下MFMessageComposeViewController
中的發送按鈕才能真正發送消息。 標准MFMessageComposeViewController
中的發送按鈕“隱藏”在消息正文的底部角落,一些不太精通技術的用戶很難找到它(事實不是意見,因為我有測試用戶詢問該怎么做下一個)!
除某些例外情況外,Apple 不允許修改此消息撰寫界面。 我查看了UIAppearance
協議,它提供了有限的選項來修改MFMessageComposeViewController
的各個方面,但這些選項不適用於發送按鈕。
我查看了文檔,有一些選項可以使用可訪問性選項突出顯示或關注界面對象,但我找不到將其鏈接到MFMessageComposeViewController
中的發送按鈕的方法,我對 UI 組件的訪問權限有限。
如何突出顯示MFMessageComposeViewController
中的發送按鈕,或訪問該按鈕以便吸引用戶注意它?
使用公共 API 無法直接突出顯示或關注MFMessageComposeViewController
中的發送按鈕。修改MFMessageComposeViewController
外觀的唯一選項是通過 UIAppearance 協議,該協議不允許您修改發送按鈕。
一種可能的解決方法是在MFMessageComposeViewController
頂部添加自定義覆蓋視圖,其中包括突出顯示或更大版本的發送按鈕,或其他一些視覺指示器,以吸引用戶注意發送按鈕的位置。 您還可以考慮在發送按鈕上方添加簡短的說明消息或 label 以幫助指導用戶。
或者,您可以考慮使用自定義視圖 controller 或用於發送 SMS 消息的界面,而不是使用系統提供的MFMessageComposeViewController
。 這會讓您更好地控制界面的布局和外觀,並允許您根據需要突出顯示或關注發送按鈕。 請記住,如果您選擇這種方法,您將需要自己處理 SMS 發送功能。
遺憾的是,無法在標准 MFMessageComposeViewController 中直接突出顯示或修改發送按鈕的外觀。 這是因為 MFMessageComposeViewController 提供的界面不可直接自定義,旨在為所有 iOS 應用程序提供一致的用戶體驗。
要考慮的一種解決方案是在向用戶展示 MFMessageComposeViewController 之前向他們提供額外的說明或指導。 這可能包括屏幕上的消息或教程,專門指出界面中發送按鈕的位置,或提供視覺指示器(例如箭頭或突出顯示框)以引導用戶到正確的位置。
另一種選擇是在模態視圖 controller 中呈現 MFMessageComposeViewController,並在模態視圖 controller 中添加其他說明或指南。
此外,您可以使用輔助功能選項將 VoiceOver label 添加到按鈕,當按鈕處於焦點時可以大聲讀出給用戶。
值得注意的是,Apple 的 HIG(Human Interface Guidelines)不鼓勵自定義系統的標准視圖 controller。您應該盡量堅持標准的 iOS 界面,這樣用戶才能感到舒適和熟悉該應用程序。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.