91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

TabHost實現點擊事件

發布時間:2020-10-15 15:07:20 來源:網絡 閱讀:1658 作者:roadley 欄目:開發技術

在一般的情況下,我們只需要在Tab欄中實現兩種狀態的切換,這時候運用selector就可以簡單的實現了。

而如果是三種狀態之間的切換呢,具體效果如圖所示

TabHost實現點擊事件(注:實現的是使用FragmenTabHost)

效果是不選中時顯示最左邊狀態,選中第一次時顯示中間狀態,再一次點擊過后顯示右側狀態。


在找到正確的做法之前,我試過了TabHost的所有監聽器,均以失敗告終。


其后,我們知道每一個tab標簽都是一個布局,所以我在把這個布局添加到tab中時設置點擊事件,這樣做又是否可行呢,答案依舊是否定的,與TabHost的點擊事件一樣,他們都會被我們實現的onTabChangedListener搶占了。


最后才在同學的幫助下找到了一個能實現此效果的方法:

mTabHost.getTabWidget().getChildAt(1).setOnClickListener()

利用mTabHost.getTabWidget().getChildAt(1)方法找到的是tab標簽位置為1的那個布局,設置它的點擊事件,在點擊事件中找到布局之中的圖片,去設置即可。


照理說此時應該完美無瑕了,可是運行出來后,發現這是tab為1的這個位置會有點擊事件(當然了,設置圖片這個是看不出來的,發個Toast還是能出來的),但是點擊它選中的效果沒有了。


這是因為此時這個tab標簽的位置只去響應了我們的點擊事件,而不會響應TabChangeLinstener的事件了。


此時需要在監聽事件的代碼中加入一句話,設置當前選中的tab標簽

mTabHost.setCurrentTab(1);

這樣就真的能做到完美無瑕了。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

澄城县| 梁河县| 中江县| 海林市| 滕州市| 丽水市| 梨树县| 天镇县| 北票市| 龙门县| 保靖县| 扶风县| 虞城县| 玛纳斯县| 西城区| 廉江市| 安庆市| 东兰县| 普宁市| 湟中县| 洪泽县| 肥东县| 镇江市| 池州市| 津南区| 新和县| 宣武区| 晋城| 承德市| 那曲县| 康定县| 拉萨市| 琼海市| 十堰市| 土默特右旗| 木里| 天柱县| 遂昌县| 精河县| 郧西县| 巍山|