Time of Update: 2017-01-19
寫在前面的話DiffUtil是一個尋找集合變化的工具類,是搭配RecyclerView一起使用的,如果你還不瞭解RecyclerView,可以閱讀一些資料,這裡就不介紹了。先放效果圖:可以看到,當我們點擊按鈕的時候,這個RecyclerView所顯示的集合發生了改變,有的元素被增加了(8.Jason),也有的元素被移動了(3.Rose),甚至是被修改了(2.Fndroid)。RecyclerView對於每個Item的動畫是以不同方式重新整理的:
Time of Update: 2017-01-19
建立一個eclipse-android項目後,如test2,從其它項目中拷貝若干個包到test2中,在編譯時間總會出現以下錯誤:?主要看第三條:The project cannot be built until build path errors are resolved這個錯誤的原因是:AndroidManifest.xml中配置的主包名與AndroidManifest.xml
Time of Update: 2017-01-19
這裡寫連結內容仿映客送小禮物的特效,順便複習一下屬性動畫,話不多說先看效果圖。需求分析可以看到整個動畫有幾部分組成,那我們就把每個部分拆分出來各個擊破。1.要顯示那些內容以及內容間的位置關係?可以看到我們要顯示帳戶圖片,暱稱,禮物表徵圖以及數量。所以這裡我選擇用FrameLayout來作為根布局。2.需要哪些動畫以及動畫的執行順序?a.首先是整體從左至右飛入並有一個回彈(translationX +
Time of Update: 2017-01-19
就是仿照現在掃一掃的形式,周圍是半透明的遮擋,然後中間是全透明的,拍攝後只截取框內的內容查了很多部落格,實現起來真的太複雜了,本人比較怕麻煩所以在很多地方偷懶了先上效果圖:第一步:設定照相機預覽以及拍照這是所有步驟的前提,沒有預覽,使用者怎麼知道自己拍的什麼呢。預覽用的是SurfaceView這篇博文寫得已經十分詳細了,開啟照相機,然後拍照,而且十分簡潔!不想別的部落格一下就幾百行代碼不知所云。這篇代碼可以複製下去當相機模版使用。這裡遇到一個問題,就是預覽的效果是左轉90度的,拍出來也是左轉90
Time of Update: 2017-01-19
Factory 方法模式,往往是設計模式初學者入門的模式,的確,有人稱之為最為典型最具啟發效果的模式。android中用到了太多的工廠類,其中有用Factory 方法模式的,當然也有很多工廠並不是使用Factory 方法模式的,只是工具管理類。今天以ThreadFactory舉例說明一下簡單原廠模式和Factory 方法模式。Factory 方法模式,Factory
Time of Update: 2017-01-19
前言很多人要實現輪播圖都會想到使用ViewPager + Handler來完成輪播圖的效果。但是在RxJava快速發展的情況下,已經可以使用RxJava來代替Handler完成這樣任務了。下面我們就來介紹如何?RxJava+ViewPager的輪播圖。效果圖如下ViewPager的操作說到ViwePager應該大家都不陌生,它可以結合普通的View也可以結合Fragment一起使用。在此我也就不對它的使用方法進行過多的介紹了。直接開始介紹輪播的方法。常見的輪播操作private class
Time of Update: 2017-01-19
單例模式,可以說是GOF的23種設計模式中最簡單的一個。這個模式相對於其他幾個模式比較獨立,它只負責控制自己的執行個體化數量單一(而不是考慮為使用者產生什麼樣的執行個體),很有意思,是一個感覺上很乾淨的模式,本人很喜歡這個模式。android中很多地方都用到了單例模式,本文以IME管理者InputMethodManager為例,展開分析。單例模式,Singleton
Time of Update: 2017-01-19
Android中對組合模式的應用,可謂是泛濫成粥,隨處可見,那就是View和ViewGroup類的使用。在android UI設計,幾乎所有的widget和布局類都依靠這兩個類。組合模式,Composite Pattern,是一個非常巧妙的模式。幾乎所有的物件導向系統都應用到了組合模式。1.意圖將對象View和ViewGroup組合成樹形結構以表示"部分-整體"的階層(View可以做為ViewGroup的一部分)。組合模式使得使用者對單個對象View和組合對象ViewGroup的使用具有一致性。
Time of Update: 2017-01-19
ListView控制項的使用:ListView控制項裡面裝的是一行一行的資料,一行中可能有多列,選中一行,則該行的幾列都被選中,同時可以觸發一個事件,這種控制項在平時還是用得很多的。使用ListView時主要是要設定一個適配器,適配器主要是用來放置一些資料。使用起來稍微有些複雜,這裡用的是android內建的SimpleAdapter,形式如下:android.widget.SimpleAdapter.SimpleAdapter(Context context, List<?
Time of Update: 2017-01-19
RadioButton是選項按鈕,多個RadioButton放在一個RadioGroup控制項中,也就是說每次只能有1個RadioButton被選中。而CheckBox是多選按鈕,Toatst是android中帶的一個用於顯示提示小視窗訊息的控制項,其提示的內容過一會兒會自動消失。RadioGroup和CheckBox控制項設定監聽器都是用的setOnCheckedChangeListener函數,其輸入參數是一個函數,且函數內部要實現1個內部類。RadioGroup監聽器的輸入參數用的是Rad
Time of Update: 2017-01-19
相對布局要比前面講的線性布局和表格版面配置要靈活一些,所以平常用得也是比較多的。相對布局控制項的位置是與其周圍控制項的位置相關的,從名字可以看出來,這些位置都是相對的,確定出了其中一個控制項的位置就可以確定另一個控制項的位置了。本次實驗就是顯示如下的activity: 其中只有2個button,1個textview,1個edittext。在相對布局中,一般用到的控制項屬性解釋如下:在相對布局中有如下屬性,解釋如下:android:layout_above
Time of Update: 2017-01-19
開發環境:android4.1.實驗功能:在第一個介面中的2個乘數輸入處分別輸入2個數字,按下結果button,會自動跳到第二個介面並顯示輸入2個數字相乘的結果。如果在第一個介面中點擊系統的menu按鈕,則會自動彈出一個菜單,功能表列包括退出和關於2個按鈕,點擊退出按鈕,則退出了該程式。實驗說明:1.
Time of Update: 2017-01-19
開發環境:android4.1.1實驗功能:在第一個Hello
Time of Update: 2017-01-19
android中可以自訂佈景主題和風格。風格,也就是style,我們可以將一些統一的屬性拿出來,比方說,長,寬,字型大小,字型顏色等等。可以在res/values目錄下建立一個styles.xml的檔案,在這個檔案裡面有resource根節點,在根節點裡面添加item項,item項的名字就是屬性的名字,item項的值就是屬性的值,如下所示:複製代碼 代碼如下:<?xml version="1.0"
Time of Update: 2017-01-19
一般簡單題1. Android dvm的進程和Linux的進程,應用程式的進程是否為同一個概念?DVM指dalivk的虛擬機器。每一個Android應用程式都在它自己的進程中運行,都擁有一個獨立的Dalvik虛擬機器執行個體。而每一個DVM都是在Linux 中的一個進程,所以說可以認為是同一個概念。2. SIM卡的 EF 檔案有何作用?sim卡的檔案系統有自己規範,主要是為了和手機通訊,sim本身可以有自己的作業系統,EF就是作儲存並和手機通訊用的。3.
Time of Update: 2017-01-19
關於完全退出Android程式,網上這方面的文章很多,方法也很多。記得當時自己寫的第一個比較完整的項目的時候就遇上了這個問題,由於對Activity的生命週期瞭解不夠,又使用了TabActivity使得層次關係比較複雜,在程式中添加的“退出”功能表項目經常無法完全退出,之後網上各種搜尋,各種方法也試過了,什麼System.exit(0)啊,結束進程之類的啊,都依然無效果。後面才發現的這個方法。思路也很簡單,回想自己當初為瞭解決這個問題時的苦苦尋覓,遂決定將其共用,供遇到此問題人士作為參考。囉嗦夠
Time of Update: 2017-01-19
什麼是XML?首先我們先瞭解一下什麼是XML。XML,可延伸標記語言 (XML) (Extensible Markup Language) ,用於標記電子檔案使其具有結構性的標記語言,可以用來標記資料、定義資料類型,是一種允許使用者對自己的標記語言進行定義的源語言,這是百度百科的解釋。而XML是一種在Internet中傳輸資料的常見格式,它與HTML一樣,都是SGML(標準通用標記語言
Time of Update: 2017-01-19
下面講解以下在使用listview時最常見的幾個問題。1.如何改變item的背景色和按下顏色 listview預設情況下,item的背景色是黑色,在使用者點擊時是黃色的。如果需要修改為自訂的背景顏色,一般情況下有三種方法: 1)設定listSelector 2)在布局檔案中設定item的background 3)在adapter的getview中設定 這三種方法都能達到改變item預設的背景色和按下顏色,下面來分別講解,但是在這之前需要先寫好selector.xml檔案;複製代碼
Time of Update: 2017-01-19
1.以前的滾動只是安行來重新整理,現在不是按行來滾動了,其實就是在一定時間內整體往上移動,比如說在1S內重新整理10次,由於認得肉眼看起來像是滾動。關鍵代碼如下:複製代碼 代碼如下: float plus = currentDunringTime == 0 ?
Time of Update: 2017-01-19
通過View提供的方法擷取高度方式有兩種:1, 當前顯示的view中直接擷取當前view高寬2, 通過Activity的getWindow().findViewById(Window.ID_ANDROID_CONTENT)擷取系統當前顯示的 view根(是一個framelayout對象),android繪製會將要繪製的view放置在framelayout中繪製。Display對象擷取螢幕高寬 :擷取display對象