導航:首頁 > 操作系統 > 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相關的資料

熱點內容
java簡單類型 瀏覽:358
python中反射機制 瀏覽:191
手機app哪裡可以報團旅遊 瀏覽:738
長pdf閱讀 瀏覽:26
程序員刪除代碼是怎麼樣的 瀏覽:1
電子商務pdf 瀏覽:541
致遠伺服器地址埠 瀏覽:219
如何查水逆的APP 瀏覽:88
python中有序字典 瀏覽:543
系統和伺服器的運維什麼意思 瀏覽:454
程序員看重的內容 瀏覽:361
程序員8折 瀏覽:96
社會變遷pdf 瀏覽:902
程序員怎麼選擇MacBookPro配置 瀏覽:635
phoenix命令 瀏覽:487
字體文件放到那個文件夾 瀏覽:54
設計院如何選用伺服器 瀏覽:187
吃毛蛋解壓視頻 瀏覽:586
python要素在列表中的位置 瀏覽:371
q7的壓縮比 瀏覽:375