Android佈局中xml和java效率比較
Android 佈局中有xml和Java程式碼兩種方式,xml簡單、直觀、可見,也符合MVC結構。java程式碼佈局靈活、但是程式碼量不少。結合專案需求,一般是兩種佈局方式混用。今天,不討論什麼時候用那種,討論下這兩種方式,那種效率更高。
猜測:
效率方面,因為xml涉及到xml解析,即便是打包apk時已經對xml進行了編碼,但是相比記憶體中直接建立UI佈局,效率還是會更低些。下面用程式碼對比測試:
XML檔案:
在RelativeLayout中載入一個ScrollView。ScrollView中包含一個LinearLayout,LinearLayout中包含218個TextView。用LayoutInflate載入。
Java程式碼模擬同樣的佈局。
執行結果:
1、XML載入
平均時間是232mm
2、java程式碼模擬
平均是118mm
效率很明顯,java完勝,快了大約100%
相關推薦
Android佈局中xml和java效率比較
Android 佈局中有xml和Java程式碼兩種方式,xml簡單、直觀、可見,也符合MVC結構。java程式碼佈局靈活、但是程式碼量不少。結合專案需求,一般是兩種佈局方式混用。今天,不討論什麼時候用那種,討論下這兩種方式,那種效率更高。 猜測: 效率方面,因為xml涉及到
Android JNI中C和JAVA程式碼之間的互相呼叫
jobject (*CallObjectMethod)(JNIEnv*, jobject, jmethodID, ...); jobject (*CallObjectMethodV)(JNIEnv*, jobject, jmethodID, va_list); jobject
Android SharedPreferences中apply和commit的效率差距
Android SharedPreferences中apply和commit的效率差距 經常看到它倆的速度有差別,apply和commit。到底差距多少,下面做一個統計。 apply commit 500次/平均每次消耗
Java中int和integer的比較
Java中,數值型的建立和字串有類似的地方,Integer是Java為了使用物件的屬性和方法給int準備的型別。字串 String s = “bag”; 這樣建立會在常量池中查詢 bag,沒有的話就新建,並不會在堆裡新建。 同樣地,Integer i = 11;也不會在堆裡
Android Studio開發基礎之使用XML和Java程式碼混合控制UI介面
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http:/
Java中NIO和IO的比較
NIO是為了彌補IO操作的不足而誕生的,NIO的一些新特性有:非阻塞I/O,選擇器,緩衝以及管道。管道(Channel),緩衝(Buffer) ,選擇器( Selector)是其主要特徵。 概念解釋: Channel——管道實際上就像傳統IO中的流,到任何目的地(或來自任
【Android開發】使用者介面設計-使用XML和Java程式碼混合控制UI介面
個人資訊 就職: 聚項資訊科技有限公司 職位:中級Java開發工程師 負責:上汽系統開發與維護 院校:河南理工大學 專業:軟體工程12級 郵箱:[email protected] Q Q :10101000101001010111 1101111010
Spring配置 在xml和java程式碼中讀取properties檔案
在spring引入屬性檔案 <bean id="propertyConfigurer"class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
android 中XML和物件轉換利器Xstream的使用
//JettisonMappedXmlDriver 轉換的字串 {"list":{"student":[{"id":1,"name":"haha","email":"email","address":"address","birthday":[{},"2010-11-22"]}]},"student"
Android設定Activity(介面)為全屏顯示的兩種方法 xml和java程式
方法2在4.4等一些版本,執行會異常終止,推薦使用方法1. 全屏顯示程式碼見字型加粗部分 1. 方法1:AndroidManifest.xml 裡,Activity的 android:theme 指定為" @android :style/Theme.NoTitleB
Android中ClassLoader和java中有什麼關係和區別
ClassLoader 簡介 對於 Java 程式來說,編寫程式就是編寫類,執行程式也就是執行類(編譯得到的 class 檔案),其中起到關鍵作用的就是類載入器 ClassLoader。 任何一個 Java 程式都是由若干個 class 檔案組成的一個完整的 J
Android中ImageView和ImageButton的比較詳解
第一次寫部落格,不知從何寫起,就從最近專案中遇到的一些細節問題說起吧! 專案中使用ImageButton,但是給圖片設定具體尺寸(width,height)之後,發現還是原來的大小,為了保持圖片的原始畫素,並沒有給ImageButton設定ScaleType,
Azure中block和Page的比較 Azure: Did You Know? Block vs Page Blobs
bytes ont different system types make bin better within Azure storage service supports two types of blobs (blob, or BLOB, stand for Binar
Android Studio中Git和GitHub使用詳解
可能 必須 窗口 gin 擁有 說明 詳細 對話 發現 一、Git和GitHub簡述 1.Git 分布式版本控制系統,最先使用於Linux社區,是一個開源免費的版本控制系統,功能類似於SVN和CVS。Git與其他版本管理工具最大的區別點和優點就是分布式;
is_file和file_exists效率比較
start -- 1.7 cin 運行速度 rect echo function lin 目前在弄文件緩存的時候用到了判定文件存在與否,is_file()還是file_exists()呢?is_file和file_exists兩者效率比較起來,誰的運行速度更快呢?還是做個
c#中 xml和json 互相轉換
XML serialize AD -- ldo data nod load str --xml轉json XmlDocument doc = new XmlDocument(); doc.LoadXml(result); st
select count(*)、count(1)、count(0)的區別和執行效率比較
rst 區別 如果 定性 count(0 決定性 計算 fir 執行 區別 執行效率比較 執行效率從高到低 count(*)=count(1)=count(0)>count(colFirst)>count(colLast) 1.由於count(*)的算法
PHP中XML和陣列互相轉換的方法
轉換程式碼如下 //陣列轉XML function arrayToXml($arr) { $xml = "<xml>"; foreach ($arr as $key=>$val) {
MySQL count(*)、count(1)、count(column)的區別和執行效率比較
count(*)、count(1)、count(column)區別 count(column) 會忽略為 null 的列,其他兩個不會。 執行效率 它們三個的效率如何呢?網上說的各
使用XML和JAVA混合控制UI介面
MainActivity: package com.example.mcq; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.ViewGroup; im