2016-05-19 6 views
1

私はLeanbackライブラリを使用しているAndroid TVアプリケーションを開発しています。電子メール、パスワード、ログインボタンのあるログインフォームがあります。電子メールとパスワードが有効な場合にのみ、ログインボタンを有効にしたいと思います。GuidedAction setEnableはテキストの色を変更しません

ここ

が私のコードです:

mLoginButtonAction = new GuidedAction.Builder(this.getActivity()) 
      .id(id) 
      .title(title) 
      .description(desc) 
      .build(); 
actions.add(action); 

私が最初にそれを無効にします。その後、

mLoginButtonAction.setEnabled(false); 

そして、それが有効だときにそれを有効にします。

mLoginButtonAction.setEnabled(valid); 

ボタンは、その後、有効になっており、私はそれをクリックすることができます。しかし、ボタンの色は、ディセーブルモードと同じ色です。何か案が?ありがとう。アクションに

enter image description here

答えて

2

変更はGuidedStepFragmentへの通知をトリガしませんので、手動で行う必要があります。

アクションの変更を通知するには、まずアイテムのインデックスが必要です。

int idx = findActionPositionById(actionId); 

取得と変更あなたの行動

GuidedAction someAction = getActions().get(idx); 
someAction.setEnabled(valid); 

次の更新のフラグメントを通知

notifyActionChanged(idx); 
関連する問題