눌렀을 때 2 초 동안 비활성화 된 경우 플로팅 동작 버튼의 배경색을 어떻게 바꿀 수 있는지 파악하려고합니다. 2 초의 지속 시간이 끝나면 원래 색상으로 돌아가고 싶습니다.비활성화 된 경우 FAB 배경색 변경
누를 때의 2 초 지연 코드입니다. 이 코드는 MainActivity 내의 조각에 있습니다.
appBar.setExpanded(true, true);
fab.setVisibility(View.VISIBLE);
fab.setImageResource(R.drawable.ic_phone_white_18dp);
fab.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
fab.setClickable(false);
Timer buttonTimer = new Timer();
buttonTimer.schedule(new TimerTask() {
@Override
public void run() {
runOnUiThread(new Runnable() {
@Override
public void run() {
fab.setClickable(true);
}
});
}
}, 2000);
나는 설명서의
StateListDrawable
방법과 장난 시도했지만 작동 아무것도 건너하지 않았습니다.
이
그냥fab.setBackgroundColor(Color.GRAY);
호출 FAB
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:color="@color/themeColorPressed" android:state_pressed="true"/>
<item android:color="@color/themeColorPressed" android:state_checked="true"/>
<item android:color="@color/themeColorPressed" android:state_selected="true"/>
<item android:color="@color/themeColorPressed" android:state_enabled="false"/>
<item android:color="@color/themeColor" android:state_enabled="true"/>
</selector>
? 어디에? –
활성화 또는 비활성화 된 경우 변경할 때마다 색상을 변경하십시오. 따라서 팹 코드 내부 (즉,이 경우 팹을 최종 선언해야 함) 또는 주 활동의 onCreate 또는 다른 메서드 내부에 배치 할 수 있습니다. – TheAnonymous010