ui實(shí)習(xí)周記
ui實(shí)習(xí)是我們學(xué)習(xí)專業(yè)課程之后進(jìn)行畢業(yè)設(shè)計(jì)是不可缺少的實(shí)踐環(huán)節(jié)。以下是ui實(shí)習(xí)周記,歡迎閱覽!
ui實(shí)習(xí)周記1
實(shí)驗(yàn)室三位老師啟動(dòng)了二手書租賃系統(tǒng)這個(gè)項(xiàng)目,我們一起討論了二手書租賃系統(tǒng)的需求。本項(xiàng)目后臺(tái)采用.NET MVC4+MS Sqlserver2008,分為后臺(tái)管理和前臺(tái)展示,前臺(tái)分為平臺(tái)端和手機(jī)端。手機(jī)端需要有展示圖書和預(yù)訂等功能,我們Android組的同學(xué)負(fù)責(zé)手機(jī)端的UI設(shè)計(jì)和功能實(shí)現(xiàn)。
由于首次接觸Android開發(fā),接下來(lái)我們開始各自學(xué)習(xí)android編程基礎(chǔ)。自己在圖書館借了一些有關(guān)Android開發(fā)的圖書,還在網(wǎng)上下了許多Android開發(fā)視頻。全心投入Android技術(shù)的學(xué)習(xí)之中。
初識(shí)Activity,編寫第一個(gè)android程序。學(xué)習(xí)的內(nèi)容主要有:Android 基本組件(Activity、Intent、Broadcast Receiver、Adapter、Service)。Activity實(shí)際上就是表示的是一個(gè)人機(jī)的交互程序,用于存放各個(gè)顯示控件,也是
Android的基本組成,所有的Android項(xiàng)目都使用Java語(yǔ)言進(jìn)行開發(fā),所以每一個(gè)繼承了android.app.Activity的Java類都將成為一個(gè)Activity程序,而一個(gè)Android項(xiàng)目將由多個(gè)Activity程序所組成,而所有的顯示組件都必須放在Activity上才可以進(jìn)行顯示。Activity類的常用方法。Android項(xiàng)目中的文件夾作用。Android項(xiàng)目中的文件作用。Android項(xiàng)目由若干個(gè)Activity程序所組成,每一個(gè)Activity都是一個(gè)Java類;一個(gè)Android項(xiàng)目中所有用到的資源都保存在res文件夾之中;Android中的組件需要在布局管理器中進(jìn)行配置,之后在Activity程序中可以使用findViewById()方法查找并進(jìn)行控制;在布局管理器中定義的每一個(gè)組件都有其對(duì)應(yīng)的操作類,用戶可以直接實(shí)例化這些類的對(duì)象進(jìn)行組件的定義顯示;標(biāo)準(zhǔn)的Android項(xiàng)目,所有的文字顯示信息應(yīng)該保存在strings.xml文件中保存。
Android中的基本控件的學(xué)習(xí)。掌握文本顯示組件的配置及使用;掌握文本顯示組件的繼承結(jié);掌握文本顯示組件的基本屬性及操作方法。TextView組件的主要功能是用于顯示文本,實(shí)際上這種控件主要就是提供了一個(gè)標(biāo)簽的顯示操作。組件的常用屬性及對(duì)應(yīng)方法。配置文本顯示框。設(shè)置“android:text”屬性設(shè)置文字的顯示風(fēng)格(android:textStyle):正常
(normal)粗體(bold)斜體(italic)。Android中設(shè)置文字大小的定義類型。在Android中所有的組件可以設(shè)置大小,但是在設(shè)置大小的時(shí)候需要指定其單位,這些單位如下:px(pixels):像素; dip(device independent pixels):依賴于設(shè)備的像素;sp(scaled pixels —— best for text size):帶比例的像素; pt(points):點(diǎn);in(inches):英尺;mm(millimeters):毫米。使用樣式表文件,在Android中為了方便美工對(duì)組件進(jìn)行修飾,也可以使用一些樣
式文件對(duì)組件顯示進(jìn)行控制,用戶只需要按照如下的xml文件格式即可定義組件的顯示樣式。TextView作為文本組件主要的功能是顯示文本數(shù)據(jù);所有的組件可以直接通過(guò)一個(gè)樣式表文件進(jìn)行屬性的配置。
ui實(shí)習(xí)周記2
本周張棟老師又啟動(dòng)了一個(gè)新的項(xiàng)目——電子名片管理系統(tǒng)。該項(xiàng)目包括三個(gè)部分:個(gè)人APP、企業(yè)版APP和管理平臺(tái)。
該項(xiàng)目的開發(fā)背景是:名片是商務(wù)交往的紐帶。而制作名片的核心目的就是自我展示和業(yè)務(wù)推介,通過(guò)名片建立自己的人脈圈。
傳統(tǒng)的紙質(zhì)名片不易傳遞,存儲(chǔ)和管理。
在商務(wù)場(chǎng)合中很多時(shí)候需要給多名客戶分發(fā)名片,而傳統(tǒng)的紙質(zhì)名片需要準(zhǔn)備一定的`數(shù)量和一定的時(shí)間進(jìn)行分發(fā)。同時(shí)分發(fā)和接受的名片并不易存儲(chǔ),極易丟失。大量的紙質(zhì)名片很難對(duì)其進(jìn)行管理,例如很難找到某張名片。
為了達(dá)成以下幾個(gè)目標(biāo)決定開發(fā)該應(yīng)用。
1. 名片交換方便快捷:1對(duì)1名片交換更加方便
2. 多人交換一步即成:多人之間的名片交換更加方便,使用應(yīng)用一
鍵可以達(dá)到目的
3. 名片信息清晰易得:對(duì)于用戶的信息可以進(jìn)行實(shí)時(shí)的維護(hù),也可
訂制自己的名片信息
4. 云人脈圈智能可控:名片信息可同步到云端,保留信息
項(xiàng)目一啟動(dòng),我們就開始進(jìn)行需求分析,然后開始設(shè)計(jì)和制作原型,在大家熬夜奮戰(zhàn)的情況下,我們終于完成了個(gè)人APP、企業(yè)APP和平臺(tái)的原型制作。
在完成任務(wù)的同時(shí),我還繼續(xù)深入學(xué)習(xí)Android技術(shù),各自開始編寫一些簡(jiǎn)單的Android應(yīng)用程序。實(shí)現(xiàn)簡(jiǎn)單的界面布局功能。
學(xué)習(xí)android中各種基本組件的使用
掌握RadioGroup類和RadioButton類的使用,單選鈕在開發(fā)中提供了一種多選一的操作模式,也是經(jīng)常見(jiàn)到的一種組件,例如:在選擇文件編碼的時(shí)候只能從多種編碼中選擇一種,或者是選擇性別的時(shí)候只能從“男”或“女”之中選擇一個(gè),而在Android中可以使用RadioGroup來(lái)定義單選鈕組件。RadioGroup類的常用操作方法。RadioGroup提供的只是一個(gè)單選鈕的容器,只有在此容器之中配置多個(gè)按鈕組件之后才可以使用,而要想設(shè)置單選鈕的內(nèi)容,則需要使用RadioButton類。掌握RadioGroup類相當(dāng)于定義了一個(gè)單選鈕的容器;RadioButton類用于定義單選鈕中的內(nèi)容。
掌握CheckBox組件的使用。CheckBox的主要功能是完成復(fù)選框的操作,在用戶輸入信息的時(shí)候,可以一次性選擇多個(gè)內(nèi)容,例如:用戶在選擇個(gè)人興趣愛(ài)好的時(shí)候一定會(huì)存在多個(gè),則此時(shí)就直接使用CheckBox即可完成功能。CheckBox類的常用方法。通過(guò)程序操作復(fù)選框組件。CheckBox組件用于實(shí)現(xiàn)復(fù)
選框的功能。掌握下拉列表Spinner的使用;可以通過(guò)程序配置Spinner顯示內(nèi)容;可以通過(guò)配置文件配置Spinner顯示內(nèi)容。下拉列表框也是一種常見(jiàn)的圖形組件,它可以為用戶提供列表的選則方式,與復(fù)選框或單選鈕相比還可以節(jié)省手機(jī)的屏幕空間,在Android中可以使用android.widget.Spinner類實(shí)現(xiàn)。Spinner類的常用方法。配置列表項(xiàng):在Android中,可以直接在main.xml文件中定義“”節(jié)點(diǎn),但是在定義此元素的時(shí)候卻不能直接設(shè)置其顯示的列表項(xiàng),關(guān)于下拉列表框中的列表項(xiàng)有以下兩種方式進(jìn)行配置:方式一:直接通過(guò)資源文件配置;方式二:通過(guò)android.widget.ArrayAdapter類讀取資源文件或者是指定具體設(shè)置的數(shù)據(jù)。其中,ArrayAdapter類的功能:有兩個(gè)主要功能:讀取資源文件中定義的列表項(xiàng)或者是通過(guò)List集合設(shè)置列表項(xiàng)。值得注意的是,對(duì)于下拉列表項(xiàng)的顯示風(fēng)格一般都會(huì)將其設(shè)置為:
“android.R.layout.simple_spinner_item”,下面分別在values文件夾之中定義兩個(gè)資源文件,用于保存所需要的下拉列表信息。使用Spinner可以完成下拉列表框的顯示功能;下拉列表框的顯示內(nèi)容可以通過(guò)配置文件或程序進(jìn)行填充。掌握時(shí)間選擇器的使用;可以通過(guò)程序配置顯示的時(shí)間。在Android中使用
TimePicker(時(shí)間選擇器),可以進(jìn)行時(shí)間的快速調(diào)整。TimePicker的常用方法。掌握日期選擇器的配置及使用。與時(shí)間選擇器對(duì)應(yīng)的還有一個(gè)日期選擇器
(DatePicker),可以完成年、月、日的設(shè)置。DatePicker類的常用方法。日期選擇器可以進(jìn)行日期的配置;可以通過(guò)設(shè)置配置不同的顯示風(fēng)格。
線型布局管理器的配置;通過(guò)Activity程序進(jìn)行線型布局。布局管理器分類:在Android中一共有以下四種布局管理器:LinearLayout:線性布局管理器(默認(rèn)),分為水平和垂直兩種,只能進(jìn)行單行布局;FrameLayout:所有的組件放在左上角,一個(gè)覆蓋一個(gè);TableLayout:任意行和列的表格布局管理器,其中TableRow代表一行,可以向行中增加組件;RelativeLayout:相對(duì)布局管理器,更具最近一個(gè)視圖組件,或是頂層父組件來(lái)確定下一個(gè)組件的位置。廢除的布局管理器:在Android 2.3.3版本之前還存在著一種絕對(duì)布局管理器
(AbsoluteLayout),此布局管理器使用X、Y軸坐標(biāo)的形式排列組件。線型布局有兩種排列方式:水平和垂直可以通過(guò)LinearLayout 類定義線型布局,而布局參數(shù)可以使用LinearLayout.LayoutParams類完成。FrameLayout布局(幀布局)就是在屏幕上開辟一個(gè)區(qū)域以填充所有的組件,但是使用FrameLayout布局會(huì)將所有的組件都放在屏幕的左上角,而且所有的組件可以層疊進(jìn)行顯示。框架布局是在一個(gè)指定的區(qū)域內(nèi)使用組件進(jìn)行填充;可以使用FrameLayout和
FrameLayout.LayoutParams類手工配置布局。掌握表格布局管理器的基本使用;掌握TableLayout和TableRow的操作關(guān)系;掌握表格布局管理器中常見(jiàn)屬性的作用。TableLayout是采用表格的形式對(duì)控件的布局進(jìn)行管理的,在TableLayout布局管理器之中,要使用TableRow進(jìn)行表格行的控制,之后所有的組件要在TableRow中增加。表格布局管理器使用TableRow控制表格行;表格布局的幾個(gè)屬性:定義伸縮列:android:shrinkColumns="3"設(shè)置不顯示列:
android:collapseColumns="0,3"增加背景圖片:android:background="@drawable/mldn_logo"表格布局也可以使用
Activity程序動(dòng)態(tài)生成。掌握相對(duì)布局管理器的主要特點(diǎn)及使用;可以使用Activity程序動(dòng)態(tài)增加組件。相對(duì)布局管理器指的是參考某一其他控件進(jìn)行擺放,可以通過(guò)控制,將組件擺放在一個(gè)指定參考組件的上、下、左、右等位置,
這些可以直接通過(guò)各個(gè)組件提供的屬性完成。相對(duì)布局管理器是以一個(gè)組件進(jìn)行定位的參考;使用RelativeLayout和RelativeLayout.LayoutParams類可以在Activity程序中動(dòng)態(tài)配置布局管理器。
Android事件處理的學(xué)習(xí)。了解事件處理的作用,了解常用的事件及相關(guān)處理接口。Android程序的開發(fā)主要是借助于Java語(yǔ)言,其事件的處理流程也是參考了java中的事件處理操作,在Java之中,如果要想進(jìn)行圖形界面的事件處理則首先必須有一個(gè)事件源,而造成事件源產(chǎn)生可以有多種形式,例如:?jiǎn)螕舭粹o或者是修改下拉列表選項(xiàng),之后根據(jù)此事件源找到相應(yīng)的事件處理操作類,對(duì)事件進(jìn)行處理。事件處理的核心在于如下操作:注冊(cè)監(jiān)聽程序;根據(jù)指定的事件編寫指定的處理程序;在事件處理類之中完成事件的處理操作。單擊事件、單選按鈕與OnCheckedChangeListener、下拉列表框與OnItemSelectedListener、監(jiān)聽日期與時(shí)間的改變、焦點(diǎn)事件、長(zhǎng)按事件、鍵盤事件、觸摸事件。
掌握滾動(dòng)視圖:ScrollView,列表顯示:ListView,對(duì)話框:Dialog,隨筆提示文本:AutoCompleteTextView,拖動(dòng)條:SeekBar,評(píng)分組件:RatingBar,信息提示框:Toast,圖片切換:ImageSwitcher,文本切換:TextSwitcher,拖拉圖片:Gallery,網(wǎng)格視圖:GridView,時(shí)鐘組件:AnalogClock與DigitalClock,計(jì)時(shí)器:Chronometer,標(biāo)簽:TabHost,菜單:Menu,隱式抽屜組件:SlidingDrawer,縮放控制:ZoomControls,彈出窗口:PopupWindow,樹型組件:
ExpandableListView。
ui實(shí)習(xí)周記3
本周開始編寫電子名片管理系統(tǒng)項(xiàng)目規(guī)格說(shuō)明書。接著又和同學(xué)們一起分析和設(shè)計(jì)數(shù)據(jù)庫(kù)。在這期間,我不僅學(xué)會(huì)了分析問(wèn)題、撰寫文檔的能力,還學(xué)會(huì)了許多以前沒(méi)有使用過(guò)得軟件。當(dāng)然在確保完成任務(wù)的同時(shí),我還不忘繼續(xù)學(xué)習(xí)Android開發(fā)技術(shù)。
本周還學(xué)習(xí)了Android提供的數(shù)據(jù)的存儲(chǔ)方式:在Android中一共提供了五種數(shù)據(jù)存儲(chǔ):SharedPreferences存儲(chǔ);文件存儲(chǔ);SQLite數(shù)據(jù)庫(kù)存儲(chǔ);ContentProvider存儲(chǔ);網(wǎng)絡(luò)存儲(chǔ)。SharedPreferences提供了一些基礎(chǔ)的信息保存功能,所有的信息都是按照“key=value”的形式進(jìn)行保存的,但是android.content.SharedPreferences接口所保存的信息只能是一些基本的數(shù)據(jù)類型,例如:字符串、整型、布爾型等。SharedPreferences可以實(shí)現(xiàn)簡(jiǎn)單的數(shù)據(jù)存儲(chǔ)功能實(shí)現(xiàn),可以利用super.getSharedPreferences()方法取得實(shí)例。
使用SharedPreferences可以方便的完成數(shù)據(jù)的存儲(chǔ)功能,但是其只能保存一些很簡(jiǎn)單的數(shù)據(jù),如果想存儲(chǔ)更多類型的數(shù)據(jù),則可以使用文件的存儲(chǔ)操作,如果要想操作文件,則需要Activity類的支持。利用IO流操作文件,考慮到用戶要自定義保存目錄,以及在“sdcard”上操作,所以本程序不太適合直接使用Activity類提供的文件操作方法,用戶可以直接使用最傳統(tǒng)的IO流完成。使用IO流完成了文件的保存,但是卻存在一個(gè)最大的問(wèn)題,因?yàn)楝F(xiàn)在文件的路徑采用的是硬編碼的方式設(shè)置,那么就有可能因?yàn)閟dcard不存在而出現(xiàn)錯(cuò)誤,即:最好的做法就是判斷sdcard是否存在,如果存在則保存,如果不存在則提示用
戶“sdcard”不存在,無(wú)法保存,而要想完成這個(gè)判斷的功能就必須通過(guò)android.os.Environment類取得目錄的信息。DOM操作:使用文件保存數(shù)據(jù)固然很方便,但是如果現(xiàn)在數(shù)據(jù)較多的話,則管理起來(lái)就不方便了,所以在使用文件保存時(shí),也往往會(huì)采用XML文件形式進(jìn)行數(shù)據(jù)的保存,而一旦使用XML操作,那么就肯定需要對(duì)XML文件進(jìn)行解析,而DOM解析就是最常用的一種。 SAX操作:雖然DOM操作使用廣泛,但是并不適合于使用DOM進(jìn)行大數(shù)據(jù)文件的操作,而這個(gè)時(shí)候就可以使用SAX解析方式進(jìn)行XML文件的讀取。使用XMLPull解析:DOM和SAX在使用上各有特點(diǎn),但是使用起來(lái)也都很不方便,而開發(fā)過(guò)Java EE程序的讀者應(yīng)該很清楚,在日常的工作之中往往會(huì)用多種開源組件(JDOM、DOM4J)來(lái)完成XML解析的操作,但是在Android操作系統(tǒng)之中又提供了一種pull解析的方式。在Android中如果要完成PULL解析處理需要org.xmlpull.v1.XmlPullParserFactory類和org.xmlpull.v1.XmlPullParser接口的支持,XmlPullParserFactory類的主要功能是可以通過(guò)里面提供的newPullParser()方法取得一個(gè)XmlPullParser接口的對(duì)象 。以上的程序使用了Pull解析方式完成了XML文檔的解析操作,但是Android中的Pull解析方式也可以同樣完成XML文檔的輸出功能,而這個(gè)時(shí)候就可以利用org.xmlpull.v1.XmlSerializer接口完成,此接口主要功能是可以通過(guò)程序控制XML文件中的元素、屬性、文字的關(guān)系結(jié)構(gòu) 。JSON數(shù)據(jù)解析:JSON采用完全獨(dú)立于語(yǔ)言平臺(tái)的文本格式(這一點(diǎn)與XML作用類似),使用JSON可以將對(duì)象中表示的一組數(shù)據(jù)轉(zhuǎn)換為字符串,然后可以在各個(gè)應(yīng)用程序之間傳遞這些字符串,或者在異步系統(tǒng)中進(jìn)行服務(wù)器和客戶端之間的數(shù)據(jù)傳遞。 JSON操作本身有其自己的數(shù)據(jù)格式,這些數(shù)據(jù)格式,用戶可以自己使用字符串拼湊,也可以直接利用JSON給出的操作類完成,而在Android系統(tǒng)之中,JSON操作所需要的數(shù)據(jù)包已經(jīng)默認(rèn)集成了,所以用戶不再需要任何導(dǎo)包的操作,即可進(jìn)行開發(fā)使用文件存儲(chǔ)可以保存更加豐富的數(shù)據(jù);在Android之中可以使用XML的DOM和SAX解析方式進(jìn)行文件操作;在Android之中提供了PULL解析用于完成XML解析;JSON可以進(jìn)行簡(jiǎn)便的信息傳送,性能更高;可以將要讀取的文件配置到項(xiàng)目的res文件目錄之中,這樣可以采用Resource直接進(jìn)行資源文件的讀取。
了解SQLite數(shù)據(jù)庫(kù)的基本作用;掌握數(shù)據(jù)庫(kù)操作輔助類:SQLiteDatabase的使用;可以使用命令操作SQLite數(shù)據(jù)庫(kù);可以完成數(shù)據(jù)庫(kù)的CRUD操作;掌握數(shù)據(jù)庫(kù)查詢及Cursor接口的使用。SQLite是一個(gè)輕量級(jí)的、嵌入式的、關(guān)系型數(shù)據(jù)庫(kù),是遵守ACID的關(guān)聯(lián)式數(shù)據(jù)庫(kù)管理系統(tǒng),其主要的是針對(duì)于嵌入式設(shè)備專門設(shè)計(jì)的數(shù)據(jù)庫(kù),由于其本身占用的存儲(chǔ)空間較小,所以目前已經(jīng)在Android操作系統(tǒng)之中廣泛的使用著,而且在SQLite數(shù)據(jù)庫(kù)之中可以方便的使用SQL語(yǔ)句實(shí)現(xiàn)數(shù)據(jù)的增加、修改、刪除、查詢等操作,最新版本的SQLite數(shù)據(jù)庫(kù)為SQLite
3。 在Android系統(tǒng)之中,一個(gè)android.database.sqlite.SQLiteDatabase類的實(shí)例都代表了一個(gè)SQLite數(shù)據(jù)庫(kù)的操作,通過(guò)SQLiteDatabase類可以執(zhí)行SQL語(yǔ)句,以完成對(duì)數(shù)據(jù)表的增加、修改、刪除、查詢等操作,在此類之中定義了基本的數(shù)據(jù)庫(kù)執(zhí)行SQL語(yǔ)句的操作方法以及一些操作的模式常量。SQLite數(shù)據(jù)庫(kù)是一個(gè)專門用于嵌入式設(shè)備的數(shù)據(jù)庫(kù);SQLite支持SQL語(yǔ)句的操作;可以使用SQLiteOpenHelper類完成數(shù)據(jù)庫(kù)的操作;所有的查詢數(shù)據(jù)使用Cursor進(jìn)行接收。
【ui實(shí)習(xí)周記】相關(guān)文章:
實(shí)習(xí)的周記01-20
行政實(shí)習(xí)周記12-02
實(shí)習(xí)教師周記11-23
cad實(shí)習(xí)周記11-25
金融行業(yè)實(shí)習(xí)周記(15周)09-25
實(shí)習(xí)周記格式要求11-22
管理實(shí)習(xí)的周記01-21