Time of Update: 2018-12-08
多線程案例——計時器 這個案例中,螢幕啟動之後,進入的介面。 螢幕上有一個文字框用於顯示逝去的時間,此外還有一個“停止計時”按鈕。案例的使用案例圖。 能夠在螢幕上“即時地顯示”時間的流逝,單線程程式是無法實現的,必須要多線程程式才可以實現,即便有些電腦語言可以通過封裝好的類實現這一功能,但從本質上講這些封裝好的類就是封裝了一個線程。 綜上所述,完成本案例用到的知識及技術如下: 1)進程和線程的概念; 2)Java中的線程,在Java中建立線程的方式;
Time of Update: 2018-12-08
部分網友會發現Activity在切換到後台或布局從橫屏LANDSCAPE切換到PORTRAIT,會重新切換Activity會觸發一次onCreate方法,我們可以在androidmanifest.xml中的activit元素加入這個屬性Android:configChanges="orientation|keyboardHidden" 即可,比如 <activity android:name=".android123" android:configChanges="orientation|
Time of Update: 2018-12-08
自訂控制項在android中無處不見,自訂控制項給了我們很大的方便。比如說,一個視圖為imageview ,imagebutton ,textview 等諸多控制項的組合,用的地方有很多,我們不可能每次都來寫3個的組合,既浪費時間,效率又低。在這種情況下,我們就可以自訂一個view來替換他們,不僅提升了效率並且在xml中運用也是相當的美觀。 一、控制項自訂屬性介紹 以下樣本中代碼均在values/attrs.xml 中定義,屬性均可隨意命名。 1. reference:參考某一資源ID。 樣本:
Time of Update: 2018-12-08
自訂dialog肯定是用的很多了但是感覺每次做都是很亂 單純完成任務而已,現在封裝了一下 以後用到直接copy 先: 主activity 複製代碼 代碼如下:package com.su.testcustomdialog; import com.su.testcustomdialog.MyDialog.Dialogcallback; import android.app.Activity; import android.os.Bundle; import android.view.View;
Time of Update: 2018-12-08
先明確幾個概念的區別: padding margin都是邊距的含義,關鍵問題得明白是什麼相對什麼的邊距. padding是控制項的內容相對控制項的邊緣的邊距. margin是控制項邊緣相對父空間的邊距. android:gravity 屬性是對該view 內容的限定.比如一個button 上面的text. 你可以設定該text 在view的靠左,靠右等位置.該屬性就幹了這個.
Time of Update: 2018-12-08
學習目的: 1、瞭解在Android中如何設定和調用XML資源 2、掌握如何利用XML和JAVA代碼進行協同開發介面 3、理解R檔案的作用
Time of Update: 2018-12-08
學習目的: 1、掌握在Android中如何建立Button 2、掌握Button的常用屬性 3、掌握Button按鈕的點擊事件(監聽器) Button是各種UI中最常用的控制項之一,它同樣也是Android開發中最受歡迎的控制項之一,使用者可以通過觸摸它來觸發一系列事件,要知道一個沒有點擊事件的Button是沒有任何意義的,因為使用者的固定思維是見到它就想去點! 先看下Android中普通Button的樣子:
Time of Update: 2018-12-08
Android的Touch事件處理機制比較複雜,特別是在考慮了多點觸摸以及事件攔截之後。 Android的Touch事件處理分3個層面:Activity層,ViewGroup層,View層。 首先說一下Touch事件處理的幾條基本規則。 如果在某個層級沒有處理ACTION_DOWN事件,那麼該層就再也收不到後續的Touch事件了直到下一次ACTION_DOWN事件。 說明: a.某個層級沒有處理某個事件指的是它以及它的子View都沒有處理該事件。
Time of Update: 2013-11-16
簡介:SQLite 內建函數比較有限,有時通過添加自訂函數(User-Defined Fuctions)的方式可以實現一些通過普通 SQL 操作無法實現或者實現很麻煩的功能;也可以替換 SQLite 原有的內建函數,使其符合我們的要求。本文側重說明在 Android 環境下的做法。現在假設我們現在要在 Android 系統的視頻播放器增加一個按照副檔名排序的功能,如果不是用自訂函數,就需要先從多媒體資料庫中查詢出來視頻的路徑,然後取出視頻檔案的副檔名並進行排序,因為查詢得到的 Cursor
Time of Update: 2013-11-16
作為一個剛畢業的大學生,我要提醒自己時時刻刻要學習。 最近做listview看到很久以前的一個demo,高手如雲啊,我們就只有好好加油了。 這是索尼公司的一個員工寫的學習部落格,由於本人英文能力有限是按照自己的理解來的,可能有些地方是錯誤的,還請各位勘正。 原文連結 The standard Android list view has support for quite a lot of things and covers almost all the
Time of Update: 2013-11-05
無意中發現了一個做得很好的電子產品測評類網站——Zealer。http://www.zealer.com/站長王自如很有個人魅力。尤其他在老羅發布會點評的那期節目裡。與他類似,我也是做品質評測的,不過是視頻的品質評測。我明白做這種第三方評測是很難盈利的。因為一旦盈利,就會有人懷疑評測的客觀性,進而失去了做評測的意義。因而評測機構必須保持獨立。但是評測機構裡面的人也需要吃飯,如果不掙錢大家就只能等著散夥了。因而評測機構註定會在獨立和盈利之間徘徊。而他們這個網站竟然堅持了下來,並且越做
Time of Update: 2013-11-05
目標檢測演算法,和卷積神經網路字元識別演算法。以撲克牌識別技術為題介紹相關的開發流程和經驗。整個系統包括,(2)或者通過灰階化,自適應二值化,ROI找輪廓,輪廓篩選,ROI輪廓分割,自動割取樣本;(3)以及通過pictureRelate進行重複高樣本自動剔除等等篩選。(2)進一步將測試分割出的誤識別樣本,進行篩選,重複2,3兩步。直到獲得滿意的檢測率。(2)花色樣本得取,共桃杏梅方四個類。(2)針對4.2的4各類訓練一個CNN分類器。在介紹系統之前先對本文涉及的兩大演算法做簡要的介
Time of Update: 2013-10-28
總的來說,widget主要功能就是顯示一些資訊。我們今天編寫一個很簡單的作為widget,顯示時間、日期、星期幾等資訊。需要顯示時間資訊,那就需要即時更新,一秒或者一分鐘更新一次 最近需要編寫一個日期時間的案頭Widget用來關聯行事曆程式,以前很少寫案頭Widget。對這方面技術不是很熟悉,今天花時間重新整理了一下,順便把編寫一個簡單時間日期程式過程記錄下來。案頭Widget其實就是一個顯示一些資訊的工具(現在也有人開發了一些有實際操作功能的widget。例如相機widget,可以直
Time of Update: 2013-10-28
受到這個的啟發終於結局了如何在AsyncTask運行中終止其操作。單純的onCancelled(true)是不行的下面把代碼貼出來~實現了登陸功能。AsyncTask簡介,它使建立需要與使用者介面互動的長時間啟動並執行任務變得更簡單。相對來說AsyncTask更輕量級一些,適用於簡單的非同步處理,不需要藉助線程和Handler即可實現。package com.isummation.exampleapp; import java.io.BufferedReader;import
Time of Update: 2013-10-28
在音樂播放器中,播放模式一般放在音樂播放完畢後自動識別,如下給出邏輯代碼,可根據需要添加合適的代碼 public static final int ALL = 0;//全部迴圈 public static final int SINGLE = 1;//單曲迴圈 public static final int RANDOM = 2;//隨機 // 一首歌播放完成後(這裡設定播放模式) public class Completed implements
Time of Update: 2013-10-28
盡量不要使用setImageBitmap或setImageResource或BitmapFactory.decodeResource來設定一張大圖, 因為這些函數在完成decode後,最終都是通過java層的createBitmap來完成的,需要消耗更多記憶體。 因此,改用先通過BitmapFactory.decodeStream方法,建立出一個bitmap,再將其設為ImageView的
Time of Update: 2013-10-28
效果看完了就來實現這個效果。1.布局檔案主介面使用下面的布局: <?xml version="1.0" encoding="utf-8"?><FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent"
Time of Update: 2013-10-28
[ dip: device independent pixels(裝置獨立像素).不同裝置有不同的顯示效果,這個和裝置硬體有關,一般我們為了支援WVGA、HVGA和QVGA 推薦使用這個,不依賴像素。px: pixels(像素). 不同裝置顯示效果相同,一般我們HVGA代表320x480像素,這個用的比較多。pt: point,是一個標準的長度單位,1pt=1/72英寸,用於印刷業,非常簡單易用;sp: scaled pixels(放大像素). 主要用於字型顯示best for
Time of Update: 2013-10-28
冰淇淋三明治(Android 4.0)標誌著Android設計的一個重要裡程碑。我們設計了幾乎系統內的每個像素,擴充了蜂巢平板中的設計方式,並應用到所有的行動裝置。從最基本的 元素開始,我們引進了新的Roboto字型,並為高解析度的顯示裝置增強了設計。其它大的變化,還包括系統架構層級操作欄和支援沒有物理按鍵的新裝置。 我們在三個主要目標上專註於核心應用程式和整個系統的的設計工作。當你為Android平台設計應用程式時,請考慮這些目標: 使人沉浸 美不僅只是皮膚。
Time of Update: 2013-10-28
PAWserver可以實現我們在Android上運行PHP的願望@Appinn 這是一個技術性的文章,有些折騰,不涉及代碼(用模擬器的話需要幾行),但不難,主要是探討思路。 沒有特別實際的性的用途,非折騰帝可以忽略。 主要軟體:PAWserver, 裝置要求:安裝PHP要求ARM架構。 所以老鼠的中興U880做不到,使用模擬器操作,ARM架構手機使用者可以直接看第二節。 第一節:Android模擬器連接埠映射 Android系統預設只能通過IP(10.0.2.2)單向訪問PC電