Android中的點擊事件(詳解)


Android(3)點擊事件的處理和應用

1.在學習點擊事件之前呢.我們學習安卓控件中的Textview,Button,redioButton,checkBox,等相關控件是使用,在安卓中呢,TextView是許多的App開發的必備控件,無論是大的項目還是小的項目都會有TextView的出現.接下來我們就從它開始講起,來簡單介紹這幾個控件的是用方法.

    TextView的使用方法:在所有的控件中都有共有的方法,那就是寬度和高度,layout_weight=""和layout_height=""當然這兩個屬性是不可少的,在每個控件只能都是需要設置的,但特殊情況除外啊,這個屬性大家可以根據自己的要求合理使用啊.

    TextView中呢,還有一個屬性,那就是singleLine=""他是確定你所顯示 的文本是單行的.這個屬性比較簡單,可以自己打出來看看效果啊.在這里就不多說了啊.

     android:text="@string/hello"//顯示文本信息.
          android:textColor="#ff00"//為文字追加顏色
          android:singleLine="true"//是否是單行顯示
          android:ellipsize="marquee"//如果是一段很長的文本,內容長度超出了這個View的寬度,我們想要一行顯示,且超出部分在末端以省略號'……'表示,但實際上沒有這樣工作,而是文本超出的多余的部分被截斷了

    focusable:獲取焦點(不經常使用)

    focusableInTouchMode:獲取觸摸模式下的焦點
           marqueeRepeatLimit:滾動次數,里面有個參數marquee_forever代表永遠滾動
    lines:指的是最小和最大行都是指定的值,如果同時指定了 minlines, 在范圍還沒有超過minlines 的情況下,以 minlines為准,如果文本內容在      minlines和 lines 之間的行數就顯示完畢,那么有多少行就多少行,但是 lines 一定會影響 文本實際的顯示行數,但是整個 textview 的行數會被      minlines 影響
    imageview: src:圖片有多大,顯示出來的就
2點擊事件的監聽和處理.

  2.1在 XML 文件中給需要設置點擊事件的控件添加 onclick 屬性,屬性的值是點擊該控件的時候執行的方法名
          方法的格式: public void 方法名( View 類型的參數)
     2.2:通過setOnClickListener方法傳遞一個View.OnClickListener的對象;由於View.OnClickListener是一個接口.

    所以它有多種得到的方式:1 直接 new 一個匿名內部類 2:當前類實現View.OnClickListener這個接口,然后 setonclicklistener 的時候傳遞 this     進去,因為 this 就是View.OnClickListener的一個子類

  2.3:我們聲明一個View.OnClickListener的對象,然后賦值一個 new View.OnClickListener 重寫內部的方法  ,然后在setonclicklistener的時候      把這個對象穿進去不管是自寫方法還是用 setonclicklistener 方法上面都有個 View 類型的參數,這個參數代表是當前點擊的控件, 如果多個控      件使用同一個點擊事件,那么可以通過參數的 view.getid 的方法拿到控件的 id, 因為 id 是唯一的,所以可以通過 switch id 的方式來區分到底      點擊的是哪個控件,然后再做具體操作
  2.4radiobutton 點擊事件:理論上不應該給他設置點擊事件,因為它內部默認處理了一個點擊事件,它應該監聽的是狀態變化,同時應該與 radiogroup      配套使用,因為它常用在多個選項里面的單選
    當radiobutton 在 radiogroup中的時候,應該用 radiogroup 的 checkchange 監聽,然后根據方法中的 checkeid來區分當前被選中的是哪個       radiobutton, 而不是去給每個 radiobutton 設置狀態變化的監聽

關注公眾號:

 

 




        問題:  如果是 includ 進來的 xml 文件,內部控件的 id 是一樣的,加入 includ 多次,那么會有幾個 id 一樣的控件,如果設置了點擊事件,如何區分?

    這個問題我們下次接着為大家介紹,敬請關注,歡迎來信留言.


   

    

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM