在這裡的說明, 純粹是依我對focusable的了解, 所謂的focus也就是你目前注視著哪個view, 這樣的說法很抽象, 我在這裡舉個例子:
比如使用google chrom時, 有兩個tab一頁是google一頁是yahoo, 當我們取得焦點是在yahoo那頁的【網頁搜尋】UI, 我們可以藉由按鍵盤上的tab鍵來改變焦點, 或者也可以用滑鼠直接去點選。講到這裡我們得出一個結論, 能夠取得焦點的, 才能夠點選, 而以目前來說我們的焦點無法指到google那一頁面, 也就是說google 的【網頁搜尋】UI是接收不到我們的click event。
而在這例子中的google&yahoo首頁, 就是相當於android中的layout.xml,經常有人利用在自行定義listview時, 發生listitem的button搶掉listview的事件, 這原因就是在於focus原本屬於mainLayout.xml (google首頁)所以在點選listview可以去做判斷你點了什麼, 而因為自行訂定了listitem而導致焦點被自行定義的item.xml(yahoo首頁)給搶走了。
沒有留言:
張貼留言