下面是效果圖,看看是不是親想要的效果圖,如果是,這段代碼你就可以參考下了,但是要靈活運用,根據需求做相應的改動。<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" >
View的簡單理解和執行個體1.View的基本概念在Activity顯示的控制項 都叫做View(View類 是所有的控制項類的父類 比如 文本 按鈕)2.在Activity當中擷取代表View的對象Activity讀取布局檔案產生相對應的 各種View對象TextView textView=(TextView)findViewBy(R.id.textView)3.設定view的屬性Activity_mian.xml
Activity是Android應用中,最直接與使用者接觸的組件,它負責載入View組件,使其展現給使用者,並保持與使用者的互動。所有的Activity組件均需要繼承Activity類,這是一個Content的間接子類,封裝了一些Activity的基本特性。View組件是所有UI組件、容器組件的基類,也就是說,它可以是一個版面配置容器,也可以是一個版面配置容器內的基本UI組件。View組件一般通過XML布局資源檔定義,同時Android系統也對這些View組件提供了對應的實作類別。如果需要通過某
android電話管理器(TelephonyManger)執行個體:TelephonyManger是管理電話狀態、網路資訊的服務類。添加許可權:<uses-permission android:name="android.permission.READ_PHONE_STATE"/> <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/> 邏輯功能:package
關於GridLayout在android4.0版本之前,如果想要達到網格布局的效果,首先可以考慮使用最常見的LinearLayout布局,但是這樣的排布會產生如下幾點問題:1、不能同時在X,Y軸方向上進行控制項的對齊。2、當多層布局嵌套時會有效能問題。3、不能穩定地支援一些支援自由編輯布局的工具。其次考慮使用表格版面配置TabelLayout,這種方式會把包含的元素以行和列的形式進行排列,每行為一個TableRow對象,也可以是一個View對象,而在TableRow中還可以繼續添加其他的控制項,
一、 Intent 作用Intent 是一個將要執行的動作的抽象的描述,一般來說是作為參數來使用,由Intent來協助完成Android各個組件之間的通訊。比如說調用startActivity()來啟動一個activity,或者由broadcaseIntent()來傳遞給所有感興趣的BroadcaseReceiver, 再或者由startService()/bindservice()來啟動一個背景service.所以可以看出來,intent主要是用來啟動其他的activity
調用系統內建的檔案瀏覽器這很簡單:/** 調用檔案選擇軟體來選擇檔案 **/ private void showFileChooser() { intent = new Intent(Intent.ACTION_GET_CONTENT); intent.setType("*/*"); intent.addCategory(Intent.CATEGORY_OPENABLE); try {
SimpleAdapter,跟名字一樣,一個簡單的適配器,既為簡單,就只是被設計來做簡單的應用的,比如待用資料的綁定,不過仍然有自訂的空間,比如說在每一個ListItem中加一個按鈕並添加響應事件.首先還是先看一下SimpleAdapter的定義吧,直接翻譯下SDK doc
效果和代碼都非常直觀:執行個體1:TimePicker<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent"
一、什麼是相對布局相對布局是另外一種控制項擺放的方式相對布局是通過指定當前控制項與兄弟控制項或者父控制項之間的相對位置,從而達到相對的位置二、為什麼要使用相對布局相對於線性布局ui效能好三、相對布局的兩組常用屬性值為某個存在控制項id:(1)android:layout_below放在某個存在id控制項的下邊緣(也就是當前控制項的上邊對齊到某個id控制項的下邊緣(2)android:layout_above放在某個存在id控制項的上邊緣(也就是當前控制項的下邊緣對齊到某個id控制項的上邊緣(3)
原理最近用socket寫了一個訊息推送的demo,在這裡和大家分享一下。主要實現了:一台手機向另外一台手機發送訊息,這兩台手機可以隨時自由發送簡訊進行通訊,類似我們常用的QQ。效果圖:原理:手機通過socket發送訊息到伺服器,伺服器每接收到一條訊息之後,都會把這條訊息放進一個messageList裡面,伺服器會不停地檢測messageList是否含有訊息,如果有的話就會根據messageList裡面item的資料,推送到相應的另一端手機上面。下面簡單畫了一個圖來說明這個原理:示範:手機用戶端c
一、概述今天給大家帶來SurfaceView的一個實戰案例,話說自訂View也是各種寫,一直沒有寫過SurfaceView,這個玩意是什麼東西?什麼時候用比較好呢?可以看到SurfaceView也是繼承了View,但是我們並不需要去實現它的draw方法來繪製自己,為什麼呢?因為它和View有一個很大的區別,View在UI線程去更新自己;而SurfaceView則在一個子線程中去更新自己;這也顯示出了它的優勢,當製作遊戲等需要不斷重新整理View時,因為是在子線程,避免了對UI線程的阻塞。知道了優
ContentObserver——內容觀察者,目的是觀察(捕捉)特定Uri引起的資料庫的變化,繼而做一些相應的處理,它類似於資料庫技術中的觸發器(Trigger),當ContentObserver所觀察的Uri發生變化時,便會觸發它。觸發器分為表觸發器、行觸發器,相應地ContentObserver也分為“表“ContentObserver、“行”ContentObserver,當然這是與它所監聽的Uri MIME Type有關的。熟悉Content
基本概念AsyncTask:非同步任務,從字面上來說,就是在我們的UI主線程啟動並執行時候,非同步完成一些操作。AsyncTask允許我們的執行一個非同步任務在後台。我們可以將耗時的操作放在非同步任務當中來執行,並隨時將任務執行的結果返回給我們的UI線程來更新我們的UI控制項。通過AsyncTask我們可以輕鬆的解決多線程之間的通訊問題。怎麼來理解AsyncTask呢?通俗一點來說,AsyncTask就相當於Android給我們提供了一個多線程編程的一個架構,其介於Thread和Handler之
要點1.在Manifest.xml裡加"接收"SMS的許可權<uses-permission Android:name="android.permission.RECEIVE_SMS"></uses-permission>2.在Manifest.xml裡註冊一個receive<!-- 註冊Receiver,並且設定優先權 --> <receiver android:name=".AutoSMS"
Android的設計之中,任何耗時的操作都不能放在UI主線程之中。所以類似於網路操作等等耗時的操作都需要使用非同步實現。而在ContentProvider之中,也有可能存在耗時的操作(當查詢的資料量很大的時候),這個時候我們也需要使用非同步調用來完成資料的查詢。當使用非同步query的時候,我們就需要使用LoaderManager了。使用LoaderManager就可以在不阻塞UI主線程的情況下完成資料的載入。(1)擷取loaderManger:activity.getLoaderManager
Android中的Service是用於後台服務的,當應用程式被掛到背景時候,問了保證應用某些組件仍然可以工作而引入了Service這個概念,那麼這裡面要強調的是Service不是獨立的進程,也不是獨立的線程,它是依賴於應用程式的主線程的,也就是說,在更多時候不建議在Service中編寫耗時的邏輯和操作,否則會引起ANR。那麼我們當我們編寫的耗時邏輯,不得不被service來管理的時候,就需要引入IntentService,IntentService是繼承Service的,那麼它包含了Servic
本文寫了一個常見的功能——手機app中註冊或綁定手機號的擷取驗證碼的功能,也就是簡訊驗證功能 具體效果就是,你在註冊介面填寫手機號,點擊擷取驗證碼按鈕,---然後會收到驗證簡訊,填入驗證碼後點擊註冊按鈕,如果驗證正確就可以跳轉到另外一個介面 1.首先大家需要在mob官網註冊一個帳號,mob是一個免費的簡訊驗證平台 2.在mob.com後台建立應用 3.下載對應的sdk 4.將sdk作為一個library匯入到你的項目中 5.現在就可以在你的項目中編寫代碼使用mob提供的這個功能了具體
在行動裝置 App滿天飛的時代,隨著移動支付的盛行,很多應用中都整合了支付功能。之前的支付一直不是我負責,近期這個項目我負責訂單模組少不了要做支付,每每提起支付就覺得怕怕,覺得很難,但當真正做的時候卻遠遠沒有想象中的那麼難。支付寶的SDK提供了demo,我們只需要配置好一些基本資料,這個demo就可以正常支付。說了這麼多,我們還是來看看完整的整合步驟吧!1、首先得申請支付寶的商家使用者,並簽約支付寶的相關服務。移動支付肯定是需要簽約 移動支付
1、概述哈,今天給大家帶來一個ViewPagerIndicator的製作,相信大家在做tabIndicator的時候,大多數人都用過TabPageIndicator,並且很多知名APP都使用過這個開源的指標。大家有沒有想過如何自己去實現這樣的一個指標,並且代碼會有多複雜呢~~~今天,我就帶領大家來從無到有的實現這樣一個指標,當然了,不準備一模一樣,搞得沒有創新似的,再看標題,跟MIUI相關,所以我們準備做一個特性與TabPageIndicator一致的,但是樣子和MIUI的Tab一樣的~~首先仿