android給我們提供了一個spinner控制項,這個控制項主要就是一個列表,那麼我們就來說說這個控制項吧,這個控制項在以前的也看見過,但今天還是從新介紹一遍吧。Spinner位於 android.widget包下,每次只顯示使用者選中的元素,當使用者再次點擊時,會彈出挑選清單供使用者選擇,而挑選清單中的元素同樣來自適配器。Spinner是View類得一個子類。1.效果圖2.建立分頁檔(main.xml)
首先呈上效果圖當今APP,哪個沒有點滑動重新整理功能,簡直就太落伍了。正因為需求多,因此自然而然開源的也就多。但是若想引用開源庫,則很麻煩,比如PullToRefreshView這個庫,如果把開原始碼都移植到項目中,這是件很繁瑣的事,如果用依賴功能的話,對於強迫症的我,又很不爽。現在也有各種自訂ListView實現PullToRefreshListView的控制項,無非就是在header加入一個控制項,通過setPadding的方式來改變顯示效果。效果已經太out了,如意中發現google內建的
智能手機的迅速普及,大大的豐富了我們的娛樂生活。現在大家都喜歡晚上睡覺前玩會兒手機,但是應用的日間模式往往亮度太大,對眼睛有較為嚴重的傷害。因此,如今的應用往往開發了 日間和夜間
要想知道Dalvik和ART區別分析,首先我們要分別知道這兩者是什嗎?什麼是Dalvik?Dalvik是Google公司自己設計用於Android平台的虛擬機器。Dalvik虛擬機器是Google等廠商合作開發的Android行動裝置平台的核心組成部分之一。它可以支援已轉換為 .dex格式的Java應用程式的運行,.dex格式是專為Dalvik設計的一種壓縮格式,適合記憶體和處理器速度有限的系統。Dalvik
通過這篇文章,我想說明一下如何建立一個可搜尋的“連絡人清單”Android應用程式。使用這個應用程式,使用者可以通過使用導覽按鈕瀏覽所有儲存的連絡人和根據連絡人名稱搜尋連絡人。該應用程式還可以顯示連絡人的照片(如果可用)。要瀏覽連絡人清單可以使用<<,<,>和>>按鈕。要搜尋連絡人的使用者在“搜尋名稱”文字框中鍵入連絡人名稱,然後單擊搜尋按鈕。點擊“清除搜尋”按鈕,清除“搜尋名稱”文字框中,並顯示開始搜尋前,最後一次查看的連絡人。 由於該應用從裝置讀
網上下拉重新整理的DEMO很多,但是總有各種不滿意的地方,有些會下拉卡住,有些回彈不流暢,有些效能太低會各種卡頓,有些emptyView無法下拉...... 自己寫的才是最合適自己的,代碼很簡單,也很容易修改,稍微閱讀下代碼就能改出自己需要的各種效果。首先,重寫ListView,自訂Touch事件,為了使emptyView也可下拉,emptyView也加上Touch事件。 如果要實現GridView,把這裡的ListView改成GridView即可。PullableListView :
最近碰到個項目要使用到滾動選取器,原生的NumberPicker可定製性太差,不大符合UI要求。網上開源的WheelView是用ScrollView寫的,不能迴圈滾動,而且當資料量很大時要載入的Item太多,效能非常低。然後,還是自己寫一個比較靠譜,用的是ListView實現的。寫完自己體驗了一下,效能不錯,再大的資料也不怕了。感覺不錯,重新封裝了一下,提供了一些介面可以直接按照自己的需求定製,調用方法在MainActivity中。補個圖片: 不多說了,直接上代碼:CycleWheel
如果你對Android系統內建的UI控制項感覺不夠滿意,可以嘗試下自訂控制項,我們就以Button為例,很早以前Android123就寫到過Android
shape和selector是Android UI設計中經常用到的,比如我們要自訂一個圓角Button,點擊Button有些效果的變化,就要用到shape和selector。可以這樣說,shape和selector在美化控制項中的作用是至關重要的。1.Shape簡介作用:XML中定義的幾何形狀位置:res/drawable/檔案的名稱.xml使用的方法:Java代碼中:R.drawable.檔案的名稱XML中:android:background="@drawable/檔案的名稱"屬性:<
項目需求中有個功能模組需要用到時間選擇控制項,但是android系統內建的太醜了,只能自己最佳化下,結合WheelView實現滾輪選擇日期,好像網上也挺多這種文章的。但是適用範圍還是不同,希望這個能夠對需求相同的朋友有一定協助。控制項標題還有年月日時分秒這些可以自己控制是否顯示,先來看效果。 1.有年月日時分的開始時間2.只有年月日的結束時間3.用於有時身份證到期的時間選擇(分為勾選長期和直接選擇時間兩種,另外長期後面自己也可以進行擴充)4.項目結構5.直接貼代碼,代碼裡面注釋很詳細
在Android實現沒有標題列的方法有兩種:在代碼中添加requestWindowFeature(Window.FEATURE_NO_TITLE); 在資訊清單檔AndroidManifest.xml中添加android:theme="@android:style/Theme.NoTitleBar" 具體的代碼如下:第一種:MainActivity.javapackage com.lingdududu.test; import android.app.Activity; import
先上效果圖:這個控制項其實算是比較輕量級的,相信不少小夥伴都能做出來。因為項目中遇到了一些特殊的定製要求,所以就自己寫了一個,這裡放出來。 首先來分析下這個控制項的功能: •能夠響應左右滑動,並且能響應快速滑動•選擇項和未選擇項有不同的樣式表現,比如前景色彩,背景色,字型大小變粗之內的•在切換選項的時候,如果當前選項未完全呈現在介面前,則自動滾動直至當前選項完全暴露顯示前兩條還有,簡簡單單就實現了,主要是第三點,這才是我自訂這個控制項的原因
自動提示文字框(AutoCompleteTextView)可以加強使用者體驗,縮短使用者的輸入時間(百度的搜尋方塊就是這個效果)。先給大家展示下效果圖,如果大家感覺還不錯,請參考實現代碼: 最後一張擷取文字框裡面的值(其實就跟TextView、EditText一樣):首先,在xml中定義AutoCompleteTextView控制項:activity_main.xml:<LinearLayout
在Level5以上(包含)中,Activity類中的方法:public void onAttachedToWindow ()就能對Home鍵進行捕獲。具體代碼如下:MainActivity.javapackage com.lingdududu.test; import android.app.Activity; import android.os.Bundle; import android.view.KeyEvent; import android.view.WindowManager;
自動提示文字框(AutoCompleteTextView)可以加強使用者體驗,縮短使用者的輸入時間(百度的搜尋方塊就是這個效果)。相信大家都熟悉自動識別提示吧,在我們的生活中隨處可見,今天就讓我為大家簡單介紹一下它是如何設計的。所謂自動識別輸入即是根據使用者輸入的已有資訊,為使用者提示可能的值,方便使用者完成輸入。在Android裝置上這種功能分為:AutoCompleteTextView和MultiAutoCompleteTextView,前者為單個的自動識別,類似與搜尋引擎的輸入框提示;後者
在Android上沒有標準的開啟和另存新檔對話方塊。在本代碼中,我將詳細描述一個非常簡單的開啟和儲存對話方塊實現過程,對於Android初學者來說非常有用,對話方塊都是全屏活動的。主要功能:1、訪問任何目錄的SD卡2、遞迴訪問檔案夾3、單一檔案選擇4、通過按硬體後退按鈕升級5、確認檔案選擇OK按鈕 activity_open_file.xml<LinearLayout xmlns:android="<a
蘋果的iphone有語音辨識用的是Google的技術,做為Google力推的Android 自然會將其核心技術往Android 系統裡面植入,並結合google 的雲端技術將其發揚光大。所以Google Voice Recognition在Android 的實現就變得極其輕鬆。語音辨識,藉助於雲端技術可以識別使用者的語音輸入,包括語音控制等技術,下面我們將利用Google 提供的Api 實現這一功能。功能點為:通過使用者語音將使用者輸入的語音辨識出來,並列印在列表上。 * Copyright (
下面我們來探究Android如何?關機,重啟;在Android中這種操作往往需要管理員層級,或者rootAndroid實現的方式如下幾種:預設的SDK並沒有提供應用開發人員直接的Android系統關機或重啟的API介面,一般來講,實現Android系統的關機或重啟,需要較高的許可權(系統許可權甚至Root許可權)。所以,在一般的APP中,如果想要實現關機或重啟功能,要麼是在App中聲明系統許可權,要麼是通過某種“間接”的方式,比如廣播或反射,來間接實現系統關機或重啟。再者,就是放在源碼環境中進行
ActionBarDrawerToggle:在前一張中我們並沒有使用drawLayout.setDrawerListener(); 對應的參數對象就是DrawerLayout.DrawerListener: public interface DrawerListener { void onDrawerSlide(View var1, float var2); void onDrawerOpened(View var1); void
DrawerLayout顧名思義就是一個管理布局的。使用方式可以與其它的布局類類似。DrawerLayout帶有滑動的功能。只要按照drawerLayout的規定布局方式寫完布局,就能有側滑的效果。直接將DrawerLayout作為根布局,然後其內部 第一個View為內容地區 第二個View為左側菜單