導航:首頁 > 操作系統 > android自定義id

android自定義id

發布時間:2023-01-06 22:10:35

android 頁面布局時定義控制項ID時@id/XX和@+id/xx 有什麼區別

Android中的組件需要用一個int類型的值來表示,這個值也就是組件標簽中的id屬性值。id屬性只能接受資源類型的值,也就是必須以@開頭的值,例如,@id/abc、@+id/xyz等。
如果在@後面使用「+」,表示當修改完某個布局文件並保存後,系統會自動在R.java文件中生成相應的int類型變數。變數名就是「/」後面的值,例如,@+id/xyz會在R.java文件中生成int xyz = value,其中value是一個十六進制的數。如果xyz在R.java中已經存在同名的變數,就不再生成新的變數,而該組件會使用這個已存在的變數的值。
也就是說,如果使用@+id/name形式,當R.java中存在名為name變數時,則該組件會使用該變數的值作為標識。如果不存在該變數,則添加一個新的變數,並為該變數賦相應的值(不會重復)。
既然組件的id屬性是一個資源id就可以,那麼自然可以設置任何已經存在的資源id值,例如,@drawable/icon、@string/ok、@+string/you等。當然,也可以設置android系統中已存在的資源id,例如,樓主提出的@id/android:list,那麼這個android是什麼意思呢,實際上,這個android就是系統的R類(在R.java文件中)所在的package。我們可以在Java代碼編輯區輸入android.R.id.,就會列出相應的資源id,例如,也可以設置id屬性值為@id/android:message。
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
還有另外一種方法查看系統中定義的id,進入\platforms\android-1.5\data\res\values目錄,找到ids.xml文件,打開後,內容如下:


false
false


若在ids.xml中定義了ID,則在layout中可如下定義@id/price_edit,否則@+id/price_edit

② android 頁面布局時定義控制項ID

Button android:id="@+id/button1"
Button Btn=(Button)findViewById(R.id.button1);
Btn.setOnClickListener( new OnClickListener(){
public void onClick(View v)
{//你的事件處理代碼
}
});
android裡面控制項的id向你那麼定義的,我還是第一次見過

③ android 命名id是@id/***為什麼報錯不想用 @+id/.....這種,怎麼辦有什麼特殊設置嗎

@id/***是引用,@+id/***是增加...這東西不是你想用什麼就用什麼的...這是Android的規定

④ 如何為每部Android手機生成一個唯一的ID

這種方法是,以一些特定的信息為基礎,生成設備的唯一標識。
首先,演算法角度,常用的有UUID、摘要兩種。這兩種演算法都是以特定的數據為基礎,生成一個唯一的、固定長度的字元串。這里選擇UUID。

其次,計算的基礎數據,建議選擇divice_id和android_id。原因是,1)這兩個標識雖然不能抵抗wipe操作,但受用戶的行為影響比較小;2)如果正常獲取,都是唯一的;③如果不能正常獲取,結果也是固定的,不會頻繁變化。

再次,優先順序的考慮。從這兩個標識的缺點考慮。
1)device_id。
①不能標識非手機設備,例如Pad。
②許可權問題,因為用戶的反感。
③獲取異常,廠商定製系統中存在的bug,致使返回結果為空,或者為一串「0」或「*」。
④對於雙卡雙待手機,會返回兩個device_id。
2)android_id。
①Android2.3以前,系統Bug,導致不同的設備產生相同的結果:9774d56d682e549c。
②有些可能返回null。
③設備差異:對於CDMA設備,與device_id返回相同的值。
綜合考慮,device_id不能標識某些pad,以及用戶的許可權問題,是我們不能接受的,所以優先使用android_id。對於android_id返回為null的情況,再考慮使用device_id。

最後,當android_id和device_id都返回異常的情況,我們可以隨機生成一個UUID。

⑤ android怎麼將自定義控制項中子控制項的id

點Priject,點Clean,就會自動生成R文件了 如果沒有選bulid Automatically的話R文件不會即時更新的 你是編譯報錯還是運行報錯?

⑥ Android自定義屬性,format詳解

1. reference:參考某一資源ID。
(1)屬性定義:

(2)屬性使用:

2. color:顏色值。
(1)屬性定義:

(2)屬性使用:

3. boolean:布爾值。
(1)屬性定義:

(2)屬性使用:

4. dimension:尺寸值。

(2)屬性使用:

5. float:浮點值。
(1)屬性定義:

(2)屬性使用:

6. integer:整型值。
(1)屬性定義:

(2)屬性使用:

android:interpolator = "@anim/動畫ID"
android:fromDegrees = "0"
android:toDegrees = "360"
android:pivotX = "200%"
android:pivotY = "300%"
android:ration = "5000"
android:repeatMode = "restart"
android:repeatCount = "infinite"
/>

⑦ 如何修改android aapt源碼實現自定義package ID

反編譯android代碼並在eclipse中查看:apk反編譯得到程序的源代碼、片、XML配置、語言資源等文件下載上述工具中的apktool,解壓得到3個文件:aapt.exe,apktool.bat,apktool.jar,將需要反編譯的APK文件放到該目錄下,打開命令行界面(運行-CMD),定位到apktool文件夾,輸入以下命令:apktool.batd-ftest.apktest在改目錄下會生成一個classes_dex2jar.jar的文件,然後打開工具jd-gui文件夾里的jd-gui.exe,之後用該工具打開之前生成的classes_dex2jar.jar文件,便可以看到源碼了

閱讀全文

與android自定義id相關的資料

熱點內容
小奔運動app網路異常怎麼回事 瀏覽:445
php開啟壓縮 瀏覽:303
伺服器主機如何設置啟動 瀏覽:282
linux配置網路命令 瀏覽:774
一張照片怎麼製作視頻app 瀏覽:908
pythonweb和php 瀏覽:976
電腦伺服器地址ip地址 瀏覽:823
對矩陣壓縮是為了 瀏覽:910
setfacl命令 瀏覽:172
linux子系統中斷 瀏覽:342
linux查看進程ps 瀏覽:224
知識庫系統php 瀏覽:623
小波變換壓縮圖像python 瀏覽:151
阿里巴巴程序員怎麼月入百萬 瀏覽:173
如何使用國外伺服器 瀏覽:188
燃燈者pdf 瀏覽:468
編譯器用數學嗎 瀏覽:7
圖形化apk反編譯工具 瀏覽:48
考勤表加密怎麼辦 瀏覽:735
arj壓縮與解壓批處理怎麼寫 瀏覽:658