Android自定義實現(xiàn)開關(guān)按鈕代碼
我們在應用中經(jīng)??吹揭恍┻x擇開關(guān)狀態(tài)的配置文件,做項目的時候用的是android的Switch控件,但是感覺好丑的樣子子
個人認為還是自定義的比較好,先上個效果圖:
實現(xiàn)過程:
1.準備開關(guān)不同狀態(tài)的兩張圖片放入drawable中。
2.xml文件中添加代碼:
<ToggleButton android:id="@+id/switch1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center" android:background="@android:color/transparent" android:button="@drawable/btn_backgrounds" android:checked="false" android:textOff="" android:textOn="" /> android:button="@drawable/btn_backgrounds"是自己定義的android selector文件: <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:state_checked="true" android:drawable="@drawable/toggle_btn_on" /> <item android:drawable="@drawable/toggle_btn_off" />
3,之后在java文件中聲明ToggleButton控件并且實例化,添加點擊事件:
/** * 自己出創(chuàng)建的內(nèi)部類,監(jiān)聽按鈕點擊事件 * * @author cyf * */ class MyOnCheckedChangeListener implements OnCheckedChangeListener { @Override public void onCheckedChanged(CompoundButton arg0, boolean arg1) { if (arg1) { // 開 } else { // 關(guān) } } }
4.添加監(jiān)聽:
switch1.setOnCheckedChangeListener((OnCheckedChangeListener) new MyOnCheckedChangeListener());
相關(guān)文章
Android中關(guān)于屏幕的三個小眾知識(寬屏適配、禁止截屏和保持屏幕常亮)
這篇文章主要給大家介紹了Android中關(guān)于屏幕的三個小眾知識,分別是寬屏適配、禁止截屏和保持屏幕常亮的相關(guān)資料,文中通過示例代碼介紹的非常詳細,需要的朋友們可以參考學習,下面隨著小編來一起學習學習吧。2017-12-12Android使用手勢監(jiān)聽器GestureDetector遇到的不響應問題
這篇文章主要介紹了Android使用手勢監(jiān)聽器GestureDetector遇到的不響應問題,具有很好的參考價值,對大家有所幫助。一起跟隨小編過來看看吧2020-08-08關(guān)于WebView 重定向行為導致的多次加載的問題
這篇文章主要介紹了關(guān)于WebView 重定向行為導致的多次加載的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-03-03