《iOS 6核心開發手冊(第4版)》——2.11節秘訣:構建星星滑塊

本節書摘來自異步社區《iOS 6核心開發手冊(第4版)》一書中的第2章,第2.11節秘訣:構建星星滑塊,作者 【美】Erica Sadun,更多章節內容可以訪問云棲社區“異步社區”公眾號查看

2.11 秘訣:構建星星滑塊
iOS 6核心開發手冊(第4版)
評級滑塊允許用戶在一組圖像上拖動他們的手指,對像電影、軟件等這樣的項目進行評級。這是基于觸摸的界面的一項常見的任務,但是簡單的UISlider實例不能利用其浮點值很好地完成它。作為替代,像秘訣2-6中構建的選擇器可以把用戶的選擇限制于一組具體的元素,產生一個有界的整數值,它位于0和顯示的最大項目數之間。當用戶的手指觸摸每個星星時,控件的值將會更新,并且會引發相應的事件,允許應用程序像任何其他的UIControl子類一樣處理星星滑塊。

藝術作品是隨意而為的。圖2-6中顯示的示例使用的是星星,但是沒有理由把自己限制于星星。可以使用自己喜歡的任何藝術作品,只要提供“啟用”和“禁用”圖像即可。可以考慮心形圖案、鉆石、笑臉等。還可以輕松地更新這個秘訣,在展示前提供星星的起始計數。


6bd09aab1b47b03640dca502f977e0ce13ee52b0

圖2-6 秘訣2-6創建一個自定義的星星滑塊控件,根據選擇繪制每顆星星的動畫。
簡單的動畫塊可以導致星星縮小和放大,并且控件的值更新時恢復原狀

除了簡單的滑動之外,秘訣2-6還添加了動畫元素。在獲得一個新值時,最右邊的星星將添加一個簡單的動畫塊,以進行縮放和恢復原狀,除了顯目的視覺效果之外,這還可以給用戶提供生動的反饋。由于在實際應用中(而不是在圖2-6中所示的基于模擬器的截屏圖中),用戶的手指放在星星的上方,動畫使用夸張的變形提供超過預期的手指尺寸之外的反饋。在這里,藝術作品相當小,并將放大到原始尺寸的150%,但是可以輕松地修改應用程序,以匹配自己的需求。

除了最低限度的布局和反饋元素之外,秘訣2-6還沿用了秘訣2-5使用的相同類型的自定義UIControl子類方法,跟蹤觸摸的生命周期,并在合適的時間引發事件。在這個秘訣中添加星星元素和反饋所需的最低限度的代碼演示了UIControl子類化實際上有多簡單。


1d8148084d962a095e61de7c4d9d06a864e99f3f


faccd604f7c101338d37ee319c401cb8791930fe

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/541455.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/541455.shtml
英文地址,請注明出處:http://en.pswp.cn/news/541455.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

css框架和js框架_優雅設計的頂級CSS框架

css框架和js框架Brief discussion: 簡要討論: Well, who doesnt want their website or web page to look attractive, stylish and be responsive? 那么,誰不希望自己的網站或網頁看起來有吸引力,時尚并且ReactSwift? We put …

軟考下午題具體解釋---數據流圖設計

在歷年的軟考下午題其中,有五道大題。各自是數據流圖的設計,數據庫設計,uml圖,算法和設計模式,從今天這篇博文開始,小編就跟大家來一起學習軟考下午題的相關內容。包含理論上的知識以及典型例題的解說&…

基本程序 打印Scala的Hello World

Scala中的基本程序 (Basic program in Scala) As your first Scala program, we will see a basic output program that just prints "Hello World" or any other similar type of string. With this example, we will see what are the part of the code that is im…

java treemap lastkey_Java TreeMap lastKey()用法及代碼示例

java.util.TreeMap.lastKey()用于檢索Map中存在的最后一個或最高鍵。用法:tree_map.lastKey()參數:該方法不帶任何參數。返回值:該方法返回映射中存在的最后一個鍵。異常:如果映射為空,則該方法將引發NoSuchElementException。以下…

mysql屬于數據庫三級模式_數據庫系統的三級模式指的是什么

數據庫系統的三級模式指的是什么發布時間:2020-10-26 10:11:21來源:億速云閱讀:52作者:小新小編給大家分享一下數據庫系統的三級模式指的是什么,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討吧&…

《自頂向下網絡設計(第3版)》——導讀

目錄 第1部分 辨明客戶的需求和目標 第1章 分析商業目標和制約 1.1 采用自頂向下的網絡設計方法 1.2 分析商業目標 1.3 分析商業制約 1.4 商業目標檢查表 1.5 小結 1.6 復習題 1.7 設計環境 第2章 分析技術目標與折衷措施 2.1 可擴展性 2.2 可用性 2.3 網絡性能 2.4 安全性 2…

python矩陣變化_用numpy改變矩陣的形狀

我的問題有兩個方面。我有下面的代碼來處理一些矩陣。在import numpytupleList [(0, 122), (1, 246), (2, 157), (3, 166), (4, 315), (5, 108), (6, 172), (7, 20), (8, 173), (9, 38), (10, 28), (11, 72), (12, 102), (13, 277), (14, 318), (15, 316), (16, 283), (17, 31…

最小硬幣問題_進行更改的最小硬幣數量

最小硬幣問題Description: 描述: This is classic dynamic programming problem to find minimum number of coins to make a change. This problem has been featured in interview rounds of Amazon, Morgan Stanley, Paytm, Samsung etc. 這是經典的動態編程問題…

java 生成xml亂碼_jdom解決中文亂碼問題 JAVA生成xml文件幫了我很大的忙

決解了數據庫讀取出來 再保存到xml 產生的亂碼問題import java.io.FileOutputStream;import java.io.IOException;import java.io.OutputStreamWriter;import org.jdom.Attribute;import org.jdom.Document;import org.jdom.Element;import org.jdom.output.Format;import org.…

給定重量上限,背包問題_滿足給定重量的袋子的最低成本

給定重量上限,背包問題Problem statement: 問題陳述: You are given a bag of size W kg and you are provided costs of packets different weights of oranges in array cost[] where cost[i] is basically cost of i kg packet of oranges. cost[i] -1 means t…

springMVC rest風格

1.dispatcherServlet的配置<!-- The front controller of this Spring Web application, responsible for handling all application requests --><servlet><servlet-name>springDispatcherServlet</servlet-name><servlet-class>org.springfram…

sql2008能否打開mysql數據庫_mysql數據庫數據能不能導入到sql server中

點“測試”按鈕確認你的鏈接是正確的。 Press the "Test" button to ensure your connection settings are set properly and then the "OK" button when youre done.二. 創建Microsoft SQL到MySQL的鏈接1.在SQL Server Management Studio中打開一個new qu…

c語言 函數的參數傳遞示例_isunordered()函數與C ++中的示例

c語言 函數的參數傳遞示例C isunordered()函數 (C isunordered() function) isunordered() function is a library function of cmath header, it is used to check whether the given values are unordered (if one or both values are Not-A-Number (NaN)), then they are u…

java進一_JAVA小白進:基礎入門知識

1.注釋&#xff0c;關鍵字&#xff0c;標識符1.注釋(1)注釋&#xff1a;解釋說明程序的而文字。(2)注釋的分類&#xff1a;單行注釋 格式&#xff1a; //注釋的文字多行注釋 格式&#xff1a;/*注釋的文字*/文檔注釋 格式&#xff1a;/**注釋的文字*/(3)注釋的作用&#xff1a;…

補丁(patch)的制作與應用

為什么80%的碼農都做不了架構師&#xff1f;>>> 轉自http://linux-wiki.cn/wiki/zh-hans/%E8%A1%A5%E4%B8%81(patch)%E7%9A%84%E5%88%B6%E4%BD%9C%E4%B8%8E%E5%BA%94%E7%94%A8 如果hack了開源代碼&#xff0c;為了方便分享&#xff08;如提交Bug&#xff09;或自己…

php知識點匯總與解答_PHP操作員能力傾向問題與解答

php知識點匯總與解答This section contains Aptitude Questions and Answers on PHP Operators. 本節包含有關PHP運算符的 Aptitude問答。 1) Which of the following types of operators are used in PHP? Arithmetic OperatorsLogical OperatorsArray OperatorsString Oper…

csv導入mysql phpmyadmin_【轉】從phpMyAdmin批量導入Excel內容到MySQL(親測非常簡潔有效)...

今天做項目遇到需要用phpMyAdmin批量導入Excel內容到MySQL數據庫。分析了我的踏坑經歷并且總結一最便捷的一套導入數據的方法&#xff0c;非常實用簡潔&#xff1a;1、修改Excel表的數據&#xff0c;使得Excel中的字段與數據庫字段要一一對應&#xff0c;并加上自增id。2、然后…

weakhashmap_Java WeakHashMap putAll()方法與示例

weakhashmapWeakHashMap類的putAll()方法 (WeakHashMap Class putAll() method) putAll() method is available in java.util package. putAll()方法在java.util包中可用。 putAll() method is used to copy all of the associations or mappings from the given map and assig…

c語言memcmp和java的_C語言memcmp()函數:比較m字節長的兩個字符串s1和s2

函數名&#xff1a;memcmp頭文件&#xff1a;函數原型&#xff1a; void* memcmp(void *s1,void *s2,unsigned m);功能&#xff1a;比較m字節長的兩個字符串s1和s2參數&#xff1a; s1 和 s2 為要比較的字符串unsigned m 為要比較的前m個字節返回值&#xff1a;s1s1s2 返回等…

[下載地址] Subclipse 1.10.9(SVN) _附說明

http://pan.baidu.com/s/1bp6EFHt轉載于:https://www.cnblogs.com/gscq073240/articles/6814429.html