view plain
目前分類:Android筆記 (435)
- Jul 20 Mon 2015 11:03
Android實現圖像的編輯和合成
- Jul 16 Thu 2015 21:40
[Android] Installation error: Unknown failure
Installation error: Unknown failure
Please check logcat output for more details.
Launch canceled!
run configurations 的Target那邊
換個模擬器(AVD)就OK了
- Jul 16 Thu 2015 21:39
[Android] Integer.parseInt使用
private Button.OnClickListener btnTranListener = new Button.OnClickListener(){
@Override
public void onClick(View v){
int jin = Integer.parseInt(edtjin.getText().toString());
double kg=0.6*(double)jin;
txtKg.setText(kg+"公斤");
}
};
- Jul 05 Sun 2015 00:44
android使用透明色
在ios里面用惯了透明色,view.alpha,感觉很方便。想在android中也设置一下。看看效果:
上面的文字,是TextView,背景是黑色的,但是使用了透明色。
这部分东西,不需要动一点java代码,在布局文件中:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="fill_parent"
android:layout_height="fill_parent" android:background="@drawable/a">
<TextView android:layout_width="match_parent"
- Jul 02 Thu 2015 11:05
ExpandableListView箭頭的位置變換
將ExpandableListView的位置變換到右側(包括繼承自ExpandableListView的文件) Display newDisplay = getActivity().ge
Display newDisplay = getActivity().getWindowManager().getDefaultDisplay(); int width = newDisplay.getWidth(); newListView.setIndicatorBounds(width-50, width); From:CSDN |
- Jul 01 Wed 2015 21:48
android ExpandableListView详解(转载)
android ExpandableListView详解(转载)
ExpandableListView是android中可以实现下拉list的一个控件,是一个垂直滚动的心事两个级别列表项手风琴试图,列表项是来自ExpandableListViewaAdapter,组可以单独展开。
重要方法:
1 2 3 4 5 6 7 8 9 10 11 12 | expandGroup ( int groupPos) ; //在分组列表视图中 展开一组, setSelectedGroup ( int groupPosition) ; //设置选择指定的组。 setSelectedChild ( int groupPosition, int childPosition, boolean shouldExpandGroup); //设置选择指定的子项。 getPackedPositionGroup ( long packedPosition); //返回所选择的组 getPackedPositionForChild ( int groupPosition, int childPosition) ; //返回所选择的子项 getPackedPositionType ( long packedPosition); //返回所选择项的类型(Child,Group) isGroupExpanded ( int groupPosition); //判断此组是否展开 |
expandableListView.setDivider();这个是设定每个Group之间的分割线。
expandableListView.setGroupIndicator();这个是设定每个Group之前的那个图标。
expandableListView.collapseGroup(int group); 将第group组收起
ExpandableListAdapter
- Jul 01 Wed 2015 11:11
[Android]退出應用程式的N種方法
方法一
在程序中加入如下代码: this.finish();
方法二
在程序中加入如下代码:
int pid = android.os.Process.myPid();
android.os.Process.killProcess(pid); //杀死当前进程
或者:
android.os.Process.killProcess(android.os.Process.myPid());
方法三
- Jun 30 Tue 2015 15:46
ym——物聯網入口之一Android藍牙4.0
如果還有同學不知道藍牙4.0可以做什麽請查看Android+藍牙 4.0 將帶來什麽?,現在可以穿戴設備也大多用的是藍牙4.0,如 智能體質秤,智能手環,智能血壓計等等。
原文地址:http://developer.android.com/guide/topics/connectivity/bluetooth-le.html
安卓4.3(API 18)為BLE的核心功能提供平臺支持和API,App可以利用它來發現設備、查詢服務和讀寫特性。相比傳統的藍牙,BLE更顯著的特點是低功耗。這一優點使android App可以與具有低功耗要求的BLE設備通信,如近距離傳感器、心臟速率監視器、健身設備等。
關鍵術語和概念
Generic Attribute Profile(GATT)—GATT配置文件是一個通用規範,用於在BLE鏈路上發送和接收被稱為“屬性”的數據塊。目前所有的BLE應用都基於GATT。 藍牙SIG規定了許多低功耗設備的配置文件。配置文件是設備如何在特定的應用程序中工作的規格說明。註意一個設備可以實現多個配置文件。例如,一個設備可能包括心率監測儀和電量檢測。
Attribute Protocol(ATT)—GATT在ATT協議基礎上建立,也被稱為GATT/ATT。ATT對在BLE設備上運行進行了優化,為此,它使用了盡可能少的字節。每個屬性通過一個唯一的的統一標識符(UUID)來標識,每個String類型UUID使用128 bit標準格式。屬性通過ATT被格式化為characteristics和services。
Characteristic 一個characteristic包括一個單一變量和0-n個用來描述characteristic變量的descriptor,characteristic可以被認為是一個類型,類似於類。
Descriptor Descriptor用來描述characteristic變量的屬性。例如,一個descriptor可以規定一個可讀的描述,或者一個characteristic變量可接受的範圍,或者一個characteristic變量特定的測量單位。
Service service是characteristic的集合。例如,你可能有一個叫“Heart Rate Monitor(心率監測儀)”的service,它包括了很多characteristics,如“heart rate measurement(心率測量)”等。你可以在bluetooth.org 找到一個目前支持的基於GATT的配置文件和服務列表。
角色和責任
- Jun 21 Sun 2015 00:36
Android BluetoothDevice
本章內容是 Android.bluetooth.BluetoothDevice,為Android藍牙部分的章節翻譯,版本為 Android 2.3 r1,翻譯來自中山大學的"Android Club SYSU",歡迎訪問他們的WIKI:HTTP: //www.android-wiki.net,再次感謝"Android Club SYSU"!期待你一起參與Android中文API的翻譯,聯繫我 over140@gmail.com。
聲明
歡迎轉載,但請保留文章原始出處:)
Android Club SYSU:HTTP://www.android-wiki.net
移動社區:HTTP://dev.10086.cn
Android中文翻譯組:HTTP://code.taobao.org/project/view/404/
正文
一、結構
- Jun 21 Sun 2015 00:15
Android ProGuard實例教程
- Jun 21 Sun 2015 00:07
[Android] GridView表格排列
- Jun 21 Sun 2015 00:02
Android 建立自己的手寫筆畫圖案 Gesture Builder
2012092414530285
Gesture Builder提供了一手寫識別的功能,讓用戶以類似於塗鴉的方式繪制一個手寫符號,使之對應一個字符串名稱,然而GestureBuilder功能雖完整,但在手寫字符串的創建上卻有些限制,如:制式化的建立方式、無法自行配置塗鴉區、查看手寫(Gesture)以ListView來呈現等,在實際開發上稍顯“复雜”了些。
下面看一下配置UI界面的activity_gesture_builder_demo.xml文件:
复制代碼
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@drawable/white" >
- Jun 21 Sun 2015 00:00
android執行網络操作
本篇我們會介紹連接到網络中涉及的基本任務,監測的網络連接(包括連接更改),並给予用戶控制應用程序的網络使用情況。還介紹了如何解析和使用XML數據。
這個類包含一個示例應用程序來說明如何執行常見的網络操作。您可以下載示例(在右邊),並用它作为自己的應用程序源代碼的可重用代碼。本章的重點有三:
1.連接到網络
2.管理網络的使用
3.解析XML數據
一、連接到網络
在mainfest中聲明權限,代碼如下:
<uses-permission android:name="android.permission.INTERNET" />
- Jun 20 Sat 2015 23:40
Android傳感器---Motion Sensor(三)
使用重力傳感器
重力傳感器提供了三個維度的矢量,用來指示重力的方向和重量。下列代碼顯示了如何獲取一個默認的重力傳感器的實例:
private SensorManager mSensorManager;
private Sensor mSensor;
...
mSensorManager = (SensorManager) getSystemService(Context.SENSOR_SERVICE);
mSensor = mSensorManager.getDefaultSensor(Sensor.TYPE_GRAVITY);
單位與加速度傳感器所使用的單位(m/s2)相同,並且坐標系統也與加速度傳感器所使用的坐標系相同。
注意:當設備處於靜止狀態時,重力傳感器的輸出應該與加速度傳感器的輸出相同。
使用陀螺儀
- Jun 20 Sat 2015 23:24
Android TTS
一、基礎知識
TextToSpeech 簡稱TTS,稱为語音合成,是Android 從1.6版本開始支持的新功能,能將所指定的文本轉成不同語言音頻輸出。
在具體介紹前我們先來看下Adnroid系統帶的TTS設置界面,點擊Settings->Speech synthesis,如下圖所示:
圖 1 Android TTS設置界面
- Jun 20 Sat 2015 23:01
讓你的app可以定位
用戶帶和他們的移動設備與他們幾乎無處不在。移動應用程式的獨特功能之一是位置意識。明確的位置定位,並明智地使用資訊,可以讓消費者體驗帶來了更多的便利。
這篇文章將告訴你,如何在你的Android應用程式將基於位置的服務。您會學到一些方法,以接收位置更新和最佳做法。本文的重點分為下面三點,下面會一一講到,並指出其中的重點內容:
1.使用LocationManager(學習如何配置你的app,在它能接受到android的位置更新之前)
2.獲取當前位置(學習如何使用底層位置技術平臺上可用來獲得當前位置)
3.顯示位置位址(學習如何翻譯為位址位置坐標對用戶是可讀的)
一.使用LocationManager
在manifest中聲明網絡權限:
- Jun 20 Sat 2015 22:59
Android 適配多種手機螢幕和解析度
Android提供了一套資源命名和編譯機制,方便開發者適配多種手機螢幕和解析度。
今天來講一下如何將介面佈局中的固定尺寸值適配至多種手機螢幕和解析度。
介面佈局中要做到良好的適配,最好不要出現固定的尺寸值,如果無法避免,那麼我們怎樣讓這一固定尺寸值在不同手機螢幕和解析度下進行相應變化呢?
使用res/values/dimens.xml來解決這一問題!
- Jun 20 Sat 2015 22:36
android > 獲取圖片 從 本地 /相機
T3Activity.java
package t3.com;
import java.io.File;
import android.app.Activity;
import android.content.Intent;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
- Jun 20 Sat 2015 21:45
Android thumbnail 圖片的獲得及與原始圖片的映射
come from:http://duguyidao.iteye.com/blog/1074012
在上次關於使用GridView顯示Sdcard中的圖片Thumbnail圖片,然後點擊再顯示原始圖片。在上次的代碼中我是通過直接對原始圖片進行了Scale製作為100*80的圖片,然後顯示出來,這樣操作的話,當處理大圖片的時候會浪費大量的VM記憶體,所以在上次提出了使用DCIM中thumbnail的縮略圖檔的方法,這裡圖片的尺寸一般都在10-50k的大小。
接著上次關於顯示Thumbnails的問題,這裡針對如何獲取Android thumbnails的圖片以及如何和原始圖片關聯,說先看一下手機內部SDcard中的Thumbnail檔(參照附件1),使用Linux下的 ls -a 命令顯示隱藏檔。
提取圖片和視頻縮略圖可以直接訪問 android.provider.MediaStore.Images.Thumbnails 和android.provider.MediaStore.Video.Thumbnails這兩個數據庫,即可查詢出來縮略圖
如何判斷檔呢? 可以通過Cursor遍歷資料庫,對比INTERNAL_CONTENT_URI欄位的值,這是一個Uri我們可以轉成String,這裡保存著Android手機SD卡上的多媒體檔完整路徑,有關具體的縮略圖可 以通過getThumbnail(ContentResolver cr, long origId, int kind, BitmapFactory.Options options) 或getThumbnail(ContentResolver cr, long origId, long groupId, int kind, BitmapFactory.Options options) 方法獲取,這兩種方法返回Bitmap類型,而縮略圖的解析度可以從HEIGHT和WIDTH兩個欄位提取,在Android上縮略圖分為兩種,通過讀取 KIND欄位來獲得,分別為MICRO_KIND和MINI_KIND 分別為微型和迷你兩種縮略模式,前者的解析度更低。這樣我們平時獲取檔案系統的某個圖片預覽時,可以直接調用系統縮略圖,而不用自己重新計算。
在這裡我們先看一下android系統是如何存放Thumbnail圖片以及其原始圖片的。
大家可以先檢查一下/data/data/com.android.provider.media目錄下麵的databases:external-1014121a.db 和 internal.db(可參看附件2)。
因為存儲于Sdcard屬於外部存儲,主要資訊存儲于external*.db,我們查看一下此資料庫的表資訊。其中主要關注images 和 thumbnails 兩個表。
查看兩個表的資料我們可以看出Thumbnails圖片和原始圖片之間的映射關係。
從上面兩個表中可以看出,表thumbnails和Image 之間的關聯是通過image_id實現的,通過會這個_id,就可以找出來thumbnails表中的圖片和images表中圖片的映射關係了。可以就可以獲取到原始圖片的位置,欄位為images表中的_data欄位的值。
- Jun 20 Sat 2015 21:42
[Android]設計具有背景圖的按鈕ImageButton的焦
4.2 設計具有背景圖的按鈕ImageButton的焦點及事件處理
範例說明
延續前一章按鈕事件的應用範例重新設計一個具有背景圖的按鈕,讓按鈕有美觀的背景圖片,只是這次不使用先前的Button Widget,而是改以ImageButton Widget來顯示。
將按鈕背景圖預先Import至Drawable裡(*.png圖形檔),利用這些圖片,作為ImageButton的背景圖。為了做對照,我們另外在Layout配置一個"一般按鈕",運行結果畫面中,可以明顯看出圖片按鈕與一般按鈕在外觀上的差異。
一般來說,要設置ImageButton背景圖有許多方法,此程式使用的方法是ImageButton.setImage- Resource(),需要傳遞的參數即是res/drawable/下麵的Resource ID,除了設置背景圖片的方法外,程式需要用到onFocusChange與onClick等按鈕事件作為按鈕事件按一下之後的處理,最後通過TextView來顯示目前圖片按鈕的狀態為onClick、onFocus,或offFocus,並且同步更新按鈕的背景圖,讓User有動態交互的感覺。
運行結果(見圖4-2)
图4-2 随着Focus与Click动作,画面上的图片与文字会告知你目前图片按钮的状态 |