Time of Update: 2017-02-27
嵌套的二級Fragment無法接收onCreateOptionsMenu事件的問題,設定了setHasOptionsMenu也不管用。補充說明:如果通過緩衝Fragment手動調用二級Fragment,可能會出現莫名其妙的問題,比如更多Menu不顯示。解決辦法:在一級Fragment中添加Menu,可以在一級onOptionsItemSelected中手動調用二級的此方法來處理相關事件。範例程式碼:@Override public void
Time of Update: 2017-02-27
變態問題常有,今年特別多,,, - - # 今天遇到的這個非處理不可,不然沒法在HTC One S使用SearchView,其軟鍵盤不支援action設定。問題裝置:HTC One Ssearchable.xml<searchable xmlns:android="http://schemas.android.com/apk/res/android" android:label="@string/search_label"
Time of Update: 2017-02-27
Android錯誤:ava.lang.IllegalStateException: Recursive entry to executePendingTransactions錯誤java.lang.IllegalStateException: Recursive entry to executePendingTransactions at
Time of Update: 2017-02-27
今天總結一下Android中的清單控制項:ListView和Spinner。ListView可以垂直並可滑動地地顯示 一些資訊。下面闡述如何使用ListView顯示一系列的資訊。1. 建立一個工程:BasicViews5。2. strings.xml中的代碼。<?xml version="1.0" encoding="utf-8"?> <resources> <string
Time of Update: 2017-02-27
DataPicker和上一節講的TimePicker很相似。使用DatePicker,可以讓使用者選擇一個特定的日期。下面展 示如何使用DatePicker。1. 使用上一節的工程,BasicViews4,修改main.xml。<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/
Time of Update: 2017-02-27
使用TimePicker,可以讓使用者去選擇一天中的事件,包括24小時制和AM/PM制。下面的例子將會展示如何 使用TimePicker。1. 建立一個工程:BasicViews4。2. main.xml中的代碼。<?xml version="1.0" encoding="utf-8"?> <LinearLayout
Time of Update: 2017-02-27
使用者可以使用兩種層級與你的UI進行互動,一種是activity層級,另一種是view層級。在activity層級, Activity類暴露了一些你可以重寫的方法。有一些常用的方法,你可以在你的Activity中進行重寫:onKeyDownonKeyUponMenuItemSelectedonMenuOpened下面的例子重寫了一些在activity中的方法,通過這個例子展示使用者如何與眾多的activity進行互動。1. 建立一個工程:UIActivity。2.
Time of Update: 2017-02-27
到目前為止,在所有的章節中,我們所看見的UI都是通過XML來實現的。之前也提及過,除了使用XML,也 可以使用代碼來實現UI介面。這個方式是很有用的,比如你的UI需要在運行時被產生。舉個例子,假設你在 編寫一個“電影票的預定系統”,你的程式使用按鈕Buttons去顯示每個電影院的座位。在這種情況下,你就 會需要依據實際情況去動態地產生UI。下面的例子將會展示如何通過編碼,動態地在Activity中產生 UI。1. 建立一個工程:UICode。2.
Time of Update: 2017-02-27
一、bindService簡介bindService是綁定Service服務,執行service服務中的邏輯流程。service通過 Context.startService()方法開始,通過Context.stopService()方法停止;也可以通過Service.stopSelf()方法或者 Service.stopSelfResult()方法來停止自己。只要調用一次stopService()方法便可以停止服務,無論之前它被調用了多少次的
Time of Update: 2017-02-27
除了在ActionBar的左側顯示應用表徵圖和Activity的標題,也可以在ActionBar上面顯示額外的項目。這些 被添加的項目被叫做“action items”。這些項目就是一些在你應用中一些功能的捷徑。舉個例子,你 正在開發一塊RSS閱讀器,那麼action items就可能是“重新整理”、“刪除”和“添加”。下面的例子 示範如何在ActionBar中添加項目。1.
Time of Update: 2017-02-27
一、Service簡介Service是android 系統中的四大組件之一(Activity、Service、BroadcastReceiver、 ContentProvider),它跟Activity的層級差不多,但不能自己運行只能後台運行,並且可以和其他組件進行互動。service可以 在很多場合的應用中使用,比如播放多媒體的時候使用者啟動了其他Activity這個時候程式要在後台繼續播放,比如檢測SD卡上文
Time of Update: 2017-02-27
Android 手機使用Pattern圖案加密後,如果忘記密碼或多次解鎖失敗後,會被google自動鎖定,無法再次進入開機首頁。本文就是針對這種情況,研究探索了一種解決的方法,具體鎖定環境和操作步驟如下。一、手機被鎖定Android 手機使用Pattern圖案加密後,如果忘記密碼、解鎖多次失敗後(5次+10次+n次錯誤),如下圖上圖解鎖多次失敗後 ,google 賬戶會自動鎖定手機,使用者無法再次進入開機首頁,畫面如下:上圖中,使用者被鎖定 了,提示資訊如下:Account unlockTo
Time of Update: 2017-02-27
android中擷取螢幕的長度和寬度,參考了網上有很多代碼,但結果與實際不符,如My Phone是i9000,螢幕大小是480*800px,得 到的結果卻為320*533結果很不靠譜,於是自己寫了幾行代碼,親測一下測試參數:測試環境: i9000( 三星)物理螢幕:480*800pxdensity :1.5測試代碼:// 擷取螢幕密度(方法1) int screenWidth = getWindowManager().getDefaultDisplay().getWidth();
Time of Update: 2017-02-27
一個簡單的例子,對Mina架構有了大體的瞭解,在上節的基礎上,看看 怎樣實現用戶端與服務端的通訊,廢話不多說了,直接看代碼:public class Test { public static void main(String[] args) throws Exception{ SocketConnector connector = new NioSocketConnector(); IoFilter filter = new
Time of Update: 2017-02-27
1.1.1 postFramebuffer在多緩衝區機制中,只有把顯示資料寫入framebuffer才能真正在物理螢幕上顯示。前面幾個小節的輸出都是backbuffers,我們還需要最後一步——postFramebuffer。void SurfaceFlinger::postFramebuffer(){… const
Time of Update: 2017-02-27
1.1.1 handlePageFlipPageFlip可以理解為“翻頁”。從這個意思上來看,它應該與圖層緩衝區有關係——因為是多緩衝機制,在適當的時機,我們就需要做“翻頁”的動作。void SurfaceFlinger::handlePageFlip(){… const DisplayHardware&hw = graphicPlane(0).displayHardware()
Time of Update: 2017-02-27
1.1.1
Time of Update: 2017-02-27
1.1.1
Time of Update: 2017-02-27
1.1.1 應用程式的典型繪圖流程我們知道,BufferQueue有最多達32個BufferSlot,這樣設計的目的是什嗎?一個可能的原因就是提高圖形渲染速度。因為假如只有兩個buffer,可以想象一下,當應用程式這個生產者的產出效率大於消費者的處理速度時,很快它就會dequeue完所有緩衝區而處於等待狀態,從而導致不必要的麻煩。當然,實際上32隻是最大的容量,具體值是可以設定的,大家可以結合後面的ProjectButter小節來理解一下。前面小節我們已經學習了BufferQueue的內部原理,
Time of Update: 2017-02-27
注1:以下這些功能都是本人以MIUI ROM為例來講述的,如果你的Android沒有類似功能,可能是版本關係。部分功能需要安裝App來實現。注2:以下所述的優/缺點,全部純屬本人個人感官,青菜蘿蔔各有所愛,您棄之若敝的功能或許正是我非常看重的地方。某些功能或許我覺得對使用來說非常重要,而您則覺得無所謂。注3:iPhone4強於Android的地方實在太多了,比如Facetime,比如Retina的高清螢幕,比如超級流暢的遊戲功能,比如非常非常豐富的App