2017-12-02 4 views
0

タイトルには、RecyclerViewアイテムのスタイルをRecyclerViewアイテムの中のボタンまたはRecyclerViewアイテムをクリックしたときに変更したいというメッセージが表示されます(クリックしたアイテムだけです)。 これは、いずれかのボタンがクリックされた後RecyclerViewアイテムをクリックするとそのスタイルが変更されます

enter image description here

のように非表示に透明オーバーレイを見て、こんにちは、私は、私はrecyclerviewを何か似ていたんでしたし、私は背景を必要と

+1

ok問題を確認するためにコードを入力してください – diegoveloper

+0

私はまだそのコードを書いていませんでした。私はちょうどレイアウトの後ろにコードを持って、それは良い作品 – kinez

答えて

1

その項目にアクションを行う必要がありますアイテムがクリックされた変更、私がやったことはこれです:ViewHolderコンストラクタで 私はシンプルOnClickListenerを追加しました:

public NoteViewHolder(View view) { 
     super(view); 
     name = view.findViewById(R.id.name); 

     view.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View view) { 
       if (view.isSelected()) 
        view.setSelected(false); 
       else 
        view.setSelected(true); 

       Log.d(TAG, "Clicked!"); 
      } 
     }); 
    } 

でこの時点であなたの状態は選択状態と非選択状態の間で切り替わります。今、あなたは、バックグラウンドのためにセレクタを追加することができ、私の場合にはリサイクル項目のレイアウトは以下の通りです:

<?xml version="1.0" encoding="utf-8"?> 
    <TextView android:id="@+id/name" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:text="nome" 
    android:gravity="center" 
    android:background="@drawable/selected_background" 
    xmlns:android="http://schemas.android.com/apk/res/android" 
/> 

selected_backgroundが...よくセレクタですが!ここでは、次のとおりです。

<selector xmlns:android="http://schemas.android.com/apk/res/android"> 
    <item android:state_selected="true" android:drawable="@color/selected"/> 
</selector> 

項目が選択状態にあるときに、背景が「選択」色で指定されたものに変更されます、またはあなたが描画可能な、画像などを渡すことができます...

同時に、選択した状態を1つの項目に設定し、他の項目を選択解除することができます。

希望します。

関連する問題