前言一般頻繁切換Fragment會導致頻繁的釋放和建立,如果Fragment比較臃腫體驗就非常不好了,這裡分享一個方法。一、應用情境1、不使用ViewPager2、不能用replace來切換Fragment,會導致Fragment釋放(調用onDestroyView)二、實現1、xml<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
前言Fragment雖然有onResume和onPause的,但是這兩個方法是Activity的方法,調用時機也是與Activity相同,和ViewPager搭配使用這個方法就很雞肋了,根本不是你想要的效果,這裡介紹一種方法。繼承setUserVisibleHint方法:@Override public void setUserVisibleHint(boolean isVisibleToUser) {
前言TextView的drawableLeft、drawableRight和drawableTop是一個常用、好用的屬性,可以在文本的上下左右放置一個圖片,而不使用更加複雜布局就能達到,我也常常喜歡用RadioButton的這幾個屬性實現很多效果,但是苦於不支援讓drawbleLeft與文本一起置中,設定gravity為center也無濟於事,終於有空研究了一下,這裡與大家一起分享。一、效果圖查看本欄目更多精彩內容:http://www.bianceng.cnhttp://www.biancen
錯誤碼:12-12 14:28:34.692: E/AndroidRuntime(1524): java.lang.RuntimeException: startPreview failed12-12 14:28:34.692: E/AndroidRuntime(1524): at android.hardware.Camera.startPreview(Native Method)12-12 14:28:34.692: E/AndroidRuntime(1524): at
前言前幾天有在微博上推薦過一個部落格,看他文章時發現了這個屬性。有些屬性不常用,但需要的時候非常有用,於是做了個例子,正好項目用到,與大家分享一下。本文一、效果圖看到這個圖時你可以先想想如果是你,你怎麼實現這個效果。馬上想到用RelativeLayout?NO,NO,NO,,,查看本欄目更多精彩內容:http://www.bianceng.cnhttp://www.bianceng.cn/OS/extra/二、實現代碼<?xml version="1.0"
前言網上ListView上下拖動的例子有,效果也很好,但是項目要橫著拖的,只要硬著頭皮自己寫(主要是沒找到合適的),參考文章1修改而來,分享一下。截圖代碼javapublic class HoDragActivity extends Activity { private LinearLayout main; private GestureDetector mGestureDetector; @Override public void
前言AsyncTask是個好東西,能處理絕大多數應用線程和更新UI的任務,由於其內部使用了靜態線程池,如果你有一堆非同步任務(例如全域定時更新資料、同一個Activity中多個AsyncTask同時執行)其中有不能馬上執行完的情況(例如網路請求逾時),那就糟了,其他任務都還等著呢,就會出現任務卡住的情況。此時就需要直接上Thread了,這裡參考AsyncTask的API封裝了一個ThreadTask,便於必要時代碼替換,歡迎交流!農民伯伯:
cocos2d-x 3.0發布有一段時間了,作為一個初學者,我一直覺得cocos2d-x很坑。每個比較大的版本變動,都會有不一樣的項目建立方式,每次的跨度都挺大……但是憑心而論,3.0RC版本開始 環境搭建、項目建立、編譯的方式更加人性化了。現在我們進入正題,一步一步搭建cocos2dx的開發環境cocos2d-x很多tools都是需要使用Python的,因此我們需要先安裝Python環境python下載:點這裡這裡需要下載Python 2.X版本。曾經以為要下載3.
最近研究了一下如何在Android上實現CoverFlow效果的控制項,其實早在2010年,就有Neil
年前研究了一下Android如何?無線互傳的功能,寫了個小demo,最近無事,遂整理一下,與各位共用。前期調研發現,Android想要實現無線互傳有以下幾種技術:1,Bluetooth通行已久,簡單易用,無奈速度奇慢是硬傷;2,NFC,官方從API 9開始支援,但各廠商對此技術持觀望態度,比如我的三星就沒有相應NFC硬體,NFC適用近場少量資料轉送,尚未測試資料量的表現,不過NFC所謂的近場對距離要求相當苛刻,基本是要貼著才能傳;3,WIFI-P2P,傳輸速度快,且P2P使得兩台裝置互為C/S,
需要的功能很簡單,就是一個帶checkbox的列表,提交時需要知道使用者選擇了那些項目,如下圖:使用SimpleAdapter作為資料配接器,重寫SimpleAdapter.ViewBinder的方法,這樣用比自訂Adapter要方便點,代碼如下datas定義是private List<Map<String, Object>> datas=null;其中讓Map中儲存一項自我引用(my)綁定到checkBoxprivate Map<String,
視窗管理是android的一個核心內容。它管理著視窗的建立和銷毀,布局和大小,焦點的控制等等。視窗可以分為兩類:一種是應用視窗,即由具體應用建立的視窗,其實其中還可以細分出父視窗和子視窗。視窗一般都會對應一個activity。一種是系統視窗,如狀態列,這類視窗由系統直接通過windowManager來建立,和activity無關。在這裡,視窗的概念其實可以說由三部分構成,一部分是用來描述視窗資訊的,由WindowState對象表示。一個WindowState對象對應一個視窗,它擁有繪製視窗所需要
1.背景即將結束在sony移動的實習了,在最後的日子有一些傷感有一些感觸,對於android這個傾注一年心血的技術有太多話要說。感謝sony移動的各位大牛們給我這個機會,讓我徹徹底底的看清了android的本質。沒有這次工作經曆,我對android的印象可能會一直停留在sdk層。這一年陸陸續續的寫關於android方面的部落格,算上這一篇應該正好20篇。從最初的介紹一些小控制項的使用,到現在寫一些簡單的源碼操作,是時候寫一篇總結了。。。2.需要的資料胡亂扯一下學習android源碼所需要的便利條
1.背景android系統的系統截屏功能是google封裝起來的,也是大家都很想獲得的,經過一個多月的漫長研究,博主終於成功的在android新版本也就是4.3以上版本實現了系統截屏。如果大家想更好的瞭解這些知識,我建議您先把android截屏源碼捕獲以及android截屏嘗試方法總結看完再來接著看。下面這種方法是接著上面兩篇部落格的內容。首先先奉獻一張我的截圖。2.需要滿足的條件1.root的手機2.android4.1以上源碼3.基本的刷機知識,或是用刷機軟體查看本欄目更多精彩內容:http
屌絲個人開發人員經常遇到的尷尬問題是,自己不會設計UI素材又請不起專業的美工。最好的方式是去網上下載符合自己需求的素材修修改改直接用上。但是,在這個過程中會發現很多下載下來的素材是PSD格式的,很多表徵圖資源以圖層的方式共存於一個PSD檔案中。最傻的辦法是建立一個圖層,把需要的某個表徵圖土層複製過去然後再儲存。這種圖的掉渣的方式確實影響工作效率,程式員豈能浪費時間在這種事情上?本文採用一種全自動的方式提取出這個PSD裡面的所有表徵圖並產生png、jpg、@2x表徵圖,整個過程是傻瓜式的。Let`
1.背景android NDK可以用來編譯android的native方法,也可以將c和c++的代碼編譯成.so檔案,讓android程式運行。2.NDK安裝(linux環境)(1)下載對應的ndk版本,在shell裡輸入如下命令gedit ~/.bashrc(2)開啟bash檔案,添加下載的ndk路徑NDKROOT=/home/CORPUSERS/28852262/android-ndk-r9c export
1.背景在android源碼中我們能看到各種以@開頭的字元,他們大多出現在注釋中,如下圖所示但是可不要小看了它們地作用,昨天當我編譯源碼的時候,就在一個“@link”處報錯了,下面就總結下常用的@字元的意義。2.總結篇(1)最討厭的@字元<span
1.背景上一篇講了在源碼中捕獲到了android手機的截屏函數(同步選取電源鍵與音量減,詳情http://blog.csdn.net/buptgshengod/article/details/19911909),經過一周的研究還是沒有在手機上實現系統截屏功能,總結下嘗試的方法與失敗的原因。2.失敗方法分析(1)bufferframe讀取fb0在手機的/dev/graphics目錄下的fb0檔案是負責螢幕渲染的幀緩衝,網上有一些教程講如何用c將手機中的fb0轉換成bmp格式的圖片。我在androi
最近一直在用adb shell操作一些android代碼方面的東西,在這裡記錄下來,今後遇到新的再不段補充。1.pull命令,將手機中的檔案pull到pc上(將sd卡中的13.png放到電腦端)adb pull /sdcard/13.png /home/CORPUSERS/288522622.對應的push命令adb push sth sdcard/tesseract/tessdata/3.授權chmod 777 /system4.截圖adb shell
有的時候當我們調試android程式時,往往因為installfailedinsufficientstorage這個問題而不能將工程檔案讀入調試機,看似是由於記憶體空間不足,其實往往我們騰出了空間也不能解決這個問題。為了根本解決這個錯誤,下面提供一種解決方案。方法非常簡單:在AndroidManifast.xml中插入這句話android:installLocation="preferExternal"具體位置如圖查看本欄目更多精彩內容:http://www.bianceng