Quantcast
Channel: 技術者のたまごブログ
Viewing all articles
Browse latest Browse all 68

setState( new int[]{ android.R.attr.state_selected} ); が効かない

$
0
0
以下のようなdrawableをbackgroundに指定したViewで 、stateを反映したい。

v.getBackground().setState( new int[]{ android.R.attr.state_selected} );
としても全然反映されないし、困ってた。


<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<!-- 非選択時 -->
<item
android:state_selected="false"
android:drawable="@drawable/tab_unselected"
/>
<!-- 選択時 -->
<item
android:state_selected="true"
android:drawable="@drawable/tab_selected"
/>
</selector>

解決手段は
v.setSelected();
とすること。

selected限定なのでオールマイティじゃないけど、ま良い。

Viewing all articles
Browse latest Browse all 68

Trending Articles