王 婭
(廈門軟件職業技術學院 軟件工程系,福建 廈門 361000)
時間軸在旅行記錄中的應用研究
王 婭
(廈門軟件職業技術學院 軟件工程系,福建 廈門 361000)
時間軸是常見的顯示數據的形式,時間軸不僅幫助用戶梳理信息,更是用戶交互的基礎規則。“活力海滄”是一款運行在ISO系統上的、旅行類的應用軟件。在顯示旅行記錄的時候,使用的就是時間軸。文章先簡要介紹了軟件的功能,然后對于時間軸的設計,以及時間軸數據的顯示進行了探討。
旅游;時間軸;ISO
中國的旅游業是朝陽產業、綠色產業,是國民經濟提高的催化劑。通過對旅游業現狀進行分析,發現它是綜合了很多種服務性質的行業,包括游覽、交通、住宿、娛樂、社交、餐飲、購物等多個方面,其中的游覽、交通、社交等很多因素都可以與互聯網非常好的融合起來。社交加本地加移動,它將代表著未來互聯網發展的趨勢。另外,智能手機的普及以及快速發展的移動互聯網,使得基于位置的服務深入公眾日常生活,尤其是在旅游方面。借助于LBS服務,可以分享位置,提供更為針對性的服務。它實現了旅游的智能化[1]。
“活力海滄”是一款運行在ISO系統上的、基于LBS的、輕量級的旅行類的應用軟件。它以廈門海滄為試點,提供細致、全面的生活服務,并具有一定的社交功能。本款軟件有3個模塊。
1.1 首頁模塊
首頁模塊提供了有關于海滄的民俗、美食、美景、交通、生活等信息,并可以實現緊急突發事件的信息的推送,比如臺風預警、交通管制、停水停電等。
1.2 導游模塊
導游模塊顯示了周邊的酒店、景點、超市、購物中心等信息,這些信息也可以顯示在地圖上。用戶可以通過搜索快速、準確的獲取興趣點,還可以對景點、酒店等進行評價,匯總后的數據可以為生成推薦指數。
1.3 旅行記錄模塊
旅行記錄模塊用于記錄和顯示用戶的旅行。
2.1 記錄信息
記錄用戶的旅行信息,包括圖片、旅游心得、當前位置,并可以通過微博分享給好友,界面如圖1所示。
2.2 用戶提交的歷史數據的顯示功能
本文主要闡述使用時間軸顯示的數據方式。在社交性質的應用中,時間軸是常用的一種表現形式。時間軸不僅能夠幫助用戶梳理信息,更是用戶交互的基礎規則。像Facebook和人人網這樣的SNS社區以時間軸的來呈現生活,微博和Twitter用時間軸來排列信息[2]。時間軸上每一個點代表一個重要的歷史事件。時間軸上的每個數據都有特定的含義。
在使用時間軸顯示數據的過程中使用到了下面幾個控件。
TableView:是APP開發中常用到的控件,用來顯示信息。整個時間軸就是一個TableView
TableViewCell:是TableView的一行,時間軸上的每個節點就是一個TableViewCell,對應著每一次的旅行記錄。
UIView:是一個矩形區域,負責渲染區域的內容,并且響應該區域內發生的觸摸事件。
UIImageView:是UIView的子類,用來放置圖片的。用來顯示每一次旅行記錄的中用
戶圖片。
UILabel :是UIView的子類,用戶提交的時間、用戶的心得都是使用的該控件。
一個TableViewCell的設計顯示如圖2所示。

圖1 記錄界面

圖2 TableViewCell的設計顯示
在用戶旅行記錄頁面,用戶可以即時拍、也可以使用相機中的已有圖片,書寫自己的旅行心得。這些數據會存儲在SQLite數據庫中。
SQLite 是在世界上部署最廣泛的數據庫,也是ISO上最常用的數據庫之一,其具備以下特點[3]:是進程內的一個軟件庫,不需要單獨配置;不需要獨立的服務器和操作的系統;非常小、輕量級;不需要任何的外部依賴,自給自足;提供的API簡單易用;支持大多數查詢語言;可以在UNIX(Linux,Mac OS-X,Android,ISO)和 Windows(Win32,WinCE,WinRT)中運行。
為了使用時間軸將數據庫中的數據完整的顯示出來,需要將之前的顯示數據移除,然后再從數據庫中讀出最新的數據,重新加載,一個TableViewCell對應著數據庫中的一條記錄。核心代碼如圖3所示。

圖3 TableViewCell對應數據庫中的核心代碼
然而在使用TableView顯示數據的時候,出現了視圖疊加的問題,這是因為TableView提供了單元格重用機制來達到節約內存的目的,然而當TableViewCell中存在子視圖,在頁面拖拽的過程中,會出現視圖疊加的問題[4]。本文按照文獻[4]中提供的方法進行解決,完美地呈現了時間軸的顯示。
[1]陳興,史先琳.基于LBS的旅游位置服務思考[J].旅游發展與研究,2013(4):214-215.
[2]CocoaChina.設計時間軸我學會的四件事[EB/OL].(2014-08-15)[2017-08-25].http://www.cocoachina.com/programmer/20140815/9391. html.
[3]BUNOOB.SQLite簡介[EB/OL].(2016-11-20)[2017-08-25].http://www.runoob.com/sqlite/sqlite-intro.html.
[4]王婭.TableView重用機制及常見問題[J].無線互聯科技,2015(1):39-40.
Study on the application of time axis in travel records
Wang Ya
(Software Engineering Department of Xiamen Software Vocational and Technical College, Xiamen 361000, China)
Time axis is a common form of data display, it not only helps users to sort information, but also the basic rule of user interaction. The “Active Haicang is an application software about travels that runs on ISO system. When the travel record is displayed, the time axis is used. In this paper, the function of software is introduced brie fl y, and then the design and the data display of time axis are discussed.
travel; time axis; ISO
福建省教育廳中青年項目資助;項目編號:JA15886。
王婭(1983— ),女,山東菏澤人,碩士,講師;研究方向:計算機應用技術。