Time of Update: 2017-02-27
Android中使用線程Thread的方法和Java SE相同。和大多數OS系統一樣,Android中也有稱為UI Thread的主線程。UI Thread 主要用來給相應的Widget分發訊息,包括繪製(Drawing)事件。UI Thread 也是用來處理使用者互動事件的線程。比如:如果你 按下螢幕上某個按鈕,UI 線程則將Touch 事件通知對應的控制項(Widgets),Widget 則將其狀態設定成“按下”,並把“重繪”
Time of Update: 2017-02-27
Android內建的AlertDialog,ProgressDialog,DatePickerDialog,TimePickerDialog 可以用於簡單的對話方塊顯示。當還是有 這些對話方塊不能滿足應用需要的時候,這時就可以使用一些自定 義的對話方塊。有多種方法可以實現自訂對話方塊。一是使用Activity作為Dialog,可以通過設定Activity顯示Dialog風格,使得 該Activity在外觀上和Dialog一致:顯示在其它Activity前面 且半透明。<Activity
Time of Update: 2017-02-27
Dialog一般指可以顯示在Activity前面的小視窗,當前的Activity失去焦點(Focus),Dialog將接受使用者輸入,一般可以用 來顯示訊息或接受使用者輸入等等。使用Dialog時一般不需要直接建立Dialog類的執行個體。而是可以使用 AlertDialog,ProgressDialog,DatePickerDialog,TimePickerDialog。最常用的是AlertDialog。下面就以使用AlertDialog為例
Time of Update: 2017-02-27
將RadioButton 換成Button ,類似的在res/layout 中建立brush.xml:<?xml version=”1.0″ encoding=”utf-8″?><LinearLayout xmlns:android=”http://schemas.android.com/apk/res/android”
Time of Update: 2017-02-27
這個例子是繪製多邊形,多義形和路徑,採用單選鈕RadioButton來選擇Polys 和Path樣本:UI 設計為 上部分用來顯示繪圖內容,下部分為兩個選項按鈕 Polys ,Path。這樣layout就和main.xml 不一樣,main.xml 只含一個com.pstreets.graphics2d.GuidebeeGraphics2DView。因此需在res/layout下建立一個polys.xml:<?xml version=”1.0″ encoding=&
Time of Update: 2017-02-27
內容相關性功能表(Context Menu)類同PC上按滑鼠右鍵顯示的菜單,在Android平台上是長按來啟用Context Menu,Context Menu一般用來顯示和當前UI內容相關的菜單。Context Menu的用法和Option Menu非常類似:首先是建立 菜單資源,在res/menu 下建立menu_context_shape.xml,用來顯示Oval,Pear,Shape2D:<?xml version=”1.0″
Time of Update: 2017-02-27
引路蜂二維圖形畫筆(Pen)樣本含有四個樣本,Lines ,Dashes ,LineJoin 和LineCap。打算採用Option Menu(主菜單) 的方式來選擇不同樣本。首先要對GuidebeeGraphics2DView,和Graphics2DActivity做些改動,從這個樣本開始,GuidebeeGraphics2DView需要動態 繪製不同圖形(可以通過菜單,或是Thread)。在GuidebeeGraphics2DView增加下面兩個方法:final Runnable
Time of Update: 2017-02-27
AndroidGraphics2DTutorial定義了應用的主Activity,下面就可以開始寫每個具體的二維繪圖樣本。不同的例子將盡量採用 不同的UI控制項:Menu,Content Menu,Dialog,Custom Dialog,Button等等。例子採用了引路蜂二維圖形庫,引路蜂二維圖形 庫Graphics 2D API實現了移動平台(Java ME,Blackberry,iPhone,Android,Windows Phone)上圖形引擎,它能夠以一種統一的方 式處理各種基本圖形(
Time of Update: 2017-02-27
在介紹資料繫結時,我們使用了系統內建的SimpleAdapter。Android 允許自訂Adapter ,理論上可以使用任意的View (Layout)來顯示資料。下圖是對AndroidGraphics2DTutorial做改動,使用自訂Adapter來顯示樣本Activity列表。在例子中我們把原來的AndroidGraphics2DTutorial改名為AndroidGraphics2DTutorial1,重新建立一個類
Time of Update: 2017-02-27
Android簡明開發教程八說明了程式需要實現的功能,就可以建立Android項目了。請參見Android簡明開發教程三:第一個應 用Hello World ,建立一個新項目AndroidGraphics2DTutorial。今天先介紹建立的程式的架構。然後再項目添加如下類定義:添加第三方庫檔案AndroidGraphics2DTutorial調用了引路蜂二維圖形庫,因此需要在項目中添加第三方庫引用(libgisengine.jar),開啟 Android屬性視窗,添加External
Time of Update: 2017-02-27
Android SDK中帶有很多例子,其中ApiDemo詳細介紹了Android平台主要API,分成了AppContentGraphicsMediaOSTextViews幾個大類,每個大類又分為幾個小類,一共大約有 200多個執行個體,涵蓋了Android OS API的各個方面:下面是所有樣本的列表:App/Activity/AnimationApp/Activity/Custom DialogApp/Activity/Custom
Time of Update: 2017-02-27
一、動畫類型Android的animation由四種類型組成:alpha、scale、translate、rotateXML設定檔中二、 Android動畫模式Animation主要有兩種動畫模式:tweened 和 frame一種是tweened animation(漸層動畫)三、XML檔案中定義動畫① 開啟Eclipse,建立Android工程② 在res目錄中建立anim檔案夾③ 在anim目錄中建立一個myanim.xml(注意檔案名稱小寫)④ 加入XML的動畫代碼<?xml
Time of Update: 2017-02-27
Activity全屏設定方式1:AndroidManifest.xml<activity android:name="myAcitivty" android:theme="@android:style/Theme.NoTitleBar.Fullscreen" />方式2:代碼實現requestWindowFeature(Window.FEATURE_NO_TITLE); //
Time of Update: 2017-02-27
Android --- 圖片處理的方法轉換 - drawable To bitmap縮放 - Zoom圓角 - Round Corner倒影 - ReflectedbitmapPrcess code:package com.learn.games; import android.graphics.Bitmap; import android.graphics.Canvas;
Time of Update: 2017-02-27
1、Angle (2D Java)Angle是一款專為Android平台設計的,敏捷且適合快速開發的2D遊戲引擎,基於OpenGLES技術開發。該引擎全部用Java代碼編寫,並且可以根據自己的需要替換裡面的實現,缺陷在於文檔不足,而且下載的代碼中僅僅包含有少量的樣本教程。最低運行環境要求不詳。項目地址:http://code.google.com/p/angle/2、Rokon (2D Java)rokon是一款Android 2D遊戲引擎,基於OpenGL
Time of Update: 2017-02-27
寫完應用之後,作完單元測試和功能測試,有必要對應用的抗打擊能力做個測試,最好的方法是雇個“猴子”在測試,猴子 可以胡亂瞎按鍵,在這種情況下,你的應用是否還能正常工作呢?Android 測試包中提供了一個Monkey工具,就提供了“猴 子”功能,不過比真”猴子“還要智能一些,你還可以指揮這個猴子, 比如按鍵的比例,觸發某個事件的頻率等等。一
Time of Update: 2017-02-27
如果你需要實現自動化的測試,Android的monkeyrunner 工具可以協助你實現自動化的測試,它提供了一組API可以用來控制Android裝置或模擬器,使用monkeyrunner,你可以編寫Python 程式來安裝Android應用或是測試包,運行應用或測試,發送按鍵訊息,並可以截屏,然後儲存在電腦中。monkeyrunner 主要目的是用來在應用程式或架構層次來測試應用程式或運行單元測試包,但你也可以用作其它目的。monkeyrunner 工具包不同於UI/Application
Time of Update: 2017-02-27
AndroidTestCase 為一Android平台下通用的測試類別,它支援所有JUnit的Assert方法和標準的setUp 和tearDown 方法。如果 你的測試需要訪問應用的資源或者測試方法依賴於Context,可以使用AndroidTestCase 作為基類。它的類繼承關係如下 圖所示:Focus2AndroidTest 測試也是Android ApiDemos樣本解析(116):Views->Focus->2.
Time of Update: 2017-02-27
ActivityInstrumentationTestCase2 用來測試單個的Activity,被測試的Activity可以使用InstrumentationTestCase.launchActivity 來啟動,然後你能夠直接操作被測試的Activity。ActivityInstrumentationTestCase2 也支援:可以在UI線程中運行測試方法.可以注入Intent對象到被測試的Activity中ActivityInstrumentationTestCase2
Time of Update: 2017-02-27
Android 測試架構是基於JUnit的,因此對一些和平台關係不大的類,可以直接使用JUnit中的TestCase來測試。MorseCodeConverterTest 用來測試MorseCodeConverter類,MorseCodeConverter的實現和Android平台聯絡不大,因此 可以直接使用TestCase作為基類。TestCase 由Assert 類派生而來,Assert 提供了大量的Assert方法,用來比較期望值 和實際值。本例代碼如下:public class