android 中View.setID,與getID
private Map<String, TextView> mapBt = new HashMap<String, TextView>();
bt.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
for (String k : mapBt.keySet()) {
if (v.getId() == mapBt.get(k).getId()) {
columnSign
}
}
。在監聽事件中想用ID來找到MAP中對應view的時候發現getid取的值永遠是-1.
研究了下發現這裡的getID一般是指的取你佈局中設定的ID。如果 是程式碼中直接NEW出來的控制元件,他的geiid取的值是預設的-1.並非是記憶體中得id=345134512132之類的那個值。
所以當代碼中new得控制元件後面需要通過getid來判斷是否為某個控制元件的時候需要在new的時候給他利用setid()方法設定id。
相關推薦
android 中View.setID,與getID
private Map<String, TextView> mapBt = new HashMap<String, TextView>(); bt.setOnClickListener(new OnClickListener() { @Ov
Android中View自定義XML屬性詳解以及R.attr與R.styleable的區別
為View新增自定義XML屬性 Android中的各種Widget都提供了很多XML屬性,我們可以利用這些XML屬性在layout檔案中為Widget的屬性賦值。 如下所示: <TextView android:layout_wi
android 中View, Window, Activity, WindowManager,ViewRoot幾者之間的關系
line 消息傳遞 post att 顯示 增加 調用 eas window對象 (1)View:最主要的UI組件,表示屏幕上的一個矩形區域。 (2)Window: 表示一個窗體,不一定有屏幕那麽大,能夠非常大也能夠非常小;
Android中View滑動實現方式
必須 elf 內部 track 視圖 相對 top roc mar 滑動作為Android中最基礎的特效之一,使用場景非常廣泛。實現的方式也有多種,理解各種滑動的實現方式。清楚在開發中根據自己的實際需求,選擇合理的實現方案。這篇文章從:scrollTo()/scroll
Android中View的getX,getY...
都是 raw 知識 left 相對 就是 alt 就會 pos Android坐標系的理解直接關系到後面你Android進階部分的學習,如果沒有夯實的基礎,你自定義View時就會有種欲求不滿,欲罷不能——想搞懂卻又覺得難,想放棄又覺得舍不得。
Android中View的知識體系之基礎知識
[TOC] 網上有很多寫關於Android中view的文章,關於view 的知識比較多也比較雜,每次從網上找到相關文章後,都有新的收穫。這次準備寫關於view知識體系的文章,也吸取了網上許多優秀的文章的觀點和案例並加上自己的理解和感悟,這系列的文章會從view
Android中view的Left、Top、Right、Bottom
View:getLeft()、getTop()、getRight()、getBottom() 這幾個方法表示的具體座標值容易混淆,故現在記下來 看下圖佈局,相對佈局中含有ImageView,ImageView的getLeft()、getTop()、getRight()
Android中的abstract 與interface
abstract , interface // 抽象類 abstract class Abc { // 抽象類中的抽象方法 public abstract void setData(int i); public void Print() { // 呼叫了抽象方法 setData(100)
Android中View事件分發機制
View事件分發機制 今天要寫一寫Android中比較重要的一個核心,View事件分發機制。那麼事件分發機制是什麼,為什麼要寫這個呢, 下面將一一講解出來。 前言 相信大家對Android基礎知識都已經有所瞭解啦,因為畢竟Android已經涼了,應該也沒有多少新
Android中提示框與執行緒
訊息提示框 1. Toast.makeText(當前上下文, "名字或密碼錯誤", Toast.LENGTH_SHORT).show(); 1.1 Toast是Android中的一種簡單的訊息提示框 1.2 使用這個類的最簡單的方法是呼叫靜態方法構造您所
用Kotlin封裝一個Android中View的BackgroundDrawableBuilder
一個自定義的TextView,對background的設定進行了簡單封裝。同時包含了一個ShapeBuilder,可以用於設定給所有View新增背景 簡化View的background建立,支援在xml和程式碼中設定backgroundDrawable, 程式碼中支援鏈
Android中View的彈性滑動——Android開發藝術探索筆記
介紹 彈性滑動也就是漸進式滑動,實現彈性滑動的方法有很多,但是他們都有一個共同的思想:將一次大的滑動分成若干次小的滑動並在一段時間內完成。本文主要介紹三種彈性滑動方式,Scroller、動畫和Handler。 本文中的“滑動”是指View內容的滑動而非V
Android中view繪製過程
1 背景 看見沒有,如上圖中id為content的內容就是整個View樹的結構,所以對每個具體View物件的操作,其實就是個遞迴的實現。 前面《Android觸控式螢幕事件派發機制詳解與原始碼分析一(View篇)》文章的3-1小節說過And
android中熱修復與外掛化(一)
簡介 目前android技術最前沿莫屬熱修復與外掛化的技術點,當下用得最多的就是阿里的Andfix,和微信的Tinker框架,針對原始碼的實現,再次做個記錄。 熱修復給我們解決的問題 剛上線的APP應用,由於測試的疏忽,發現了一個嚴重的bug
android中的png與jpg的區別及使用場景
對於app為什麼不使用jpg圖片,因為同樣的尺寸,png格式的圖片要比jpg的圖片大很多。 重所周知,png有透明通道,而jpg沒有,此外png是無失真壓縮的,而jpg是
Android 中檔案型別與MIME的匹配表
背景介紹: MIME:全稱Multipurpose Internet Mail Extensions,多功能Internet 郵件擴充服務。它是一種多用途網際郵件擴充協議,在1992年最早應用於電子郵件系統,但後來也應用到瀏覽器。MIME型別就是設定某種副檔名的檔案用一種應
Android中View面試相關
什麼是View? Android.app.View 就是手機的UI,View 負責繪製UI,處理事件(evnet),Android 利用 View 打造出所 Widgets,利用 Widget 可打造出互動式的使用者介面,每個View 負責一定區域的繪製。 View 座標
關於Android中匯入依賴與版本不和的解決辦法
在你的app gradle中新增configurations.all { resolutionStrategy.eachDependency { DependencyResolveDetails details -> def requested
Android中byte陣列與Sting的互相轉換
1、string轉化為byte[]陣列 String str = "abcd"; byte[] bs = str.getBytes(); 2、byte[]陣列轉化為string字串 /*String str1 = "abcd"; byte[] bs1 = str1.g
Android中關於DatePickerDialog與TimePickerDialog的結合使用
package org.crazyit.dialog; import java.util.Calendar; import android.app.Activity; import android.app.DatePickerDialog; import android.app.Dialog; import