編輯:關於Android編程
使用形式:
resource 和 value直接用一個即可,但是注意如果使用
那麼得到的是ID值,也就是在R文件裡面的數字,不是實際資源值。而要使用resource來取資源值(使用getInt()獲取)。
android:name:確保是唯一的就OK了。
android:value:值可以是:
1.字符串 使用getString()獲取
2.整數 如“100” 使用getInt()獲取
3.布爾值:“true”,"false" 使用getBoolean()獲取
4.顏色值: "#rgb", "#argb", "#rrggbb", 或者 "#aarrggbb" 使用getInt()獲取
5.浮點值 :“1.2” 使用getFloat()
注意:Bundle中使用的是return (String) o;來獲取的代碼獲取一個StringValue值的,如果你配置的想配置的一個字符串的值是“000”時,但是在將metadata包裝成bundle的時候,"000"被解析成整數0,所以使用getString()獲取的會是null。
在自定義的Application裡面一個方法:
/** * 獲取Manifest裡面配置的渠道版本 *其他節點:2014-11-14
* @return * @author RANDY.ZHANG */ public String getHaiwanVersion() { String channel = ""; try { channel = this.getPackageManager().getApplicationInfo(getPackageName(), PackageManager.GET_META_DATA).metaData.getString("HAIWAN_CHANNEL"); } catch (NameNotFoundException e) { e.printStackTrace(); } return channel; }
//在Activity應用元素。 ActivityInfo info = this.getPackageManager() .getActivityInfo(getComponentName(),PackageManager.GET_META_DATA); info.metaData.getString("meta_name"); //在application應用 元素。 ApplicationInfo appInfo = this.getPackageManager() .getApplicationInfo(getPackageName(),PackageManager.GET_META_DATA); appInfo.metaData.getString("meta_name"); //在service應用 元素。 ComponentName cn = new ComponentName(this, MetaDataService.class); ServiceInfo info = this.getPackageManager().getServiceInfo(cn, PackageManager.GET_META_DATA); info.metaData.getString("meta_name"); //在receiver應用 元素。 ComponentName cn = new ComponentName(context, MetaDataReceiver.class); ActivityInfo info = context.getPackageManager().getReceiverInfo(cn, PackageManager.GET_META_DATA); info.metaData.getString("meta_name");
前面分析了電話撥號界面及電話呼叫界面,由於Android的電話Phone設計的很復雜,因此先從UI層入手分析。想要了解Android的電話撥號UI,請查看Android電
這篇我們來介紹一下享元模式(Flyweight Pattern),Flyweight 代表輕量級的意思,享元模式是對象池的一種實現。享元模式用來盡可能減少內存使用量,它適
一.前言嗯,其實需求很簡單,但是因為服務器不會主動聯系客戶端,所以客戶端必須不間斷的向服務器請求以便得到一些數據,突然不知道怎麼描述這個問題了,總之,我是通過AlarmM
工作一段時間後,經常會被領導說,你這個進入速度太慢了,競品的進入速度很快,你搞下優化吧?每當這時,你會怎麼辦?功能實現都有啊,進入時要加載那麼多view,這也沒辦法啊,等