Button 按钮
按鈕
注:Button也是繼承自TextView
注:在更改按鈕背景顏色的時候,新版本可能沒有效果(老版本可以,所以忽略這步)
這時候需要在styles.xml(新版本是themes.xml)中修改,改為
(改圖為教程視頻中的,即需在該行末尾處添加.Brige)
設置按鈕按下去一個樣子松手后一個樣子
通過StateListDrawable設置
首先在drawable下New一個Drawable Resource File
注:selector就是我們常說的圖片選擇器
在selector標簽中通過一個個的item去寫
注:雖然drawable中有很多colors,但是我們不能用顏色來寫
用drawable圖片來寫,先導幾張drawable的圖片
然后clip art選擇想要的圖片
下面這兩個圖是我導入的
然后設置其中一個為按下的時候為true
然后去xml中使用它
按下后變成
我們也可以設置顏色
可以直接設置成color,也可以使用顏色選擇器
顏色選擇器,首先新建一個文件夾
然后再創建一個顏色選擇器
同理,寫入紅色為按下的狀態,綠色為默認
再去xml中使用
按下后
還可設置前景色
可以將button想象成三層,最下面是背景色,中間是文字,最上面是前景色
設置了前景色,就會把下面倆層給覆蓋掉
前景色和背景色設置一樣,都可以直接color,或者使用drawable
注:Button里面默認會把字母都自動大寫,android:textAllCaps="false"改為false就行了
首先給button設一個id,然后在java代碼中findViewById(R.id.btn_01)
然后給一個點擊事件等
這三個內部類中都重寫了各自對應的回調方法
我們在各自內部添加一個日志打印
鼠標懸停在TAG上按alt+enter
注:當時寫的這里略顯麻煩,其實直接把Log.e()中的參數TAG刪掉,然后加上字符串“log”便可,就不用再創建一個變量TAG了
注:
Log.v():用于打印最為繁瑣、意義最小的日志信息.對應級別verbose
Log.d():用于打印一些調試信息,這些信息對你調試程序和分析問題有幫助,對應級別debug
Log.i():用于打印一些比較重要的數據,這些數據是你非常想看到的、可以幫助你分析用戶行為數據,對應級別info
Log.w():用于打印一些警告信息,提示程序在這個地方可能會有潛在的風險,最好修復以下這些出現警告的地方,對應級別warn
Log.e():用于打印程序中的錯誤信息,當有錯誤信息出來的時候,一般都代表你的程序出現了嚴重問題,必須盡快修復,對應級別error
然后再每個事件中都打印一下
接著我們run一下,然后點下方Logcat,搜索框輸入log只顯示log
ctrl+左鍵可看源碼,發現在MotionEvent中可見可以打印數字,所以我們加上打印一下數字這個方法
onTouch中0表示按下,1表示松開,2表示按住的時候滑動
可見一個點擊事件onClick由:先按下down,再按住(滑動)move,最后松開up ,組成
吐槽一下,CSDN里面發圖片自帶水印真煩吶,還要我一個一個去掉水印=_=流汗
總結
- 上一篇: MySQL5.7 Attempted t
- 下一篇: 斗战神服务器正在维护6,斗战神什么时候服