2017-10-25 2 views
0

たとえば、私はカスタムアダプターのリストビューを持ち、リスト項目はtextview、imageViewなどのさまざまな要素を含むレイアウトです。選択したリスト項目の画像ビューの色を設定するにはどうすればよいですか?このアイテムをお気に入りに追加して、黄色の星のお気に入りの色を変更したいとします。あなたはの子を得ることができるので、viewは、あなたが実際にクリックされたレイアウトで、ドキュメントによるとカスタムアダプターの項目の特定の要素の色を設定します

public boolean onItemLongClick(AdapterView<?> parent, View view, 
              int position, long id) { 

https://developer.android.com/reference/android/widget/AdapterView.OnItemLongClickListener.html

:さて、あなたはこのラインを持っている)

 list.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() { 
      @Override 
      public boolean onItemLongClick(AdapterView<?> parent, View view, 
              int position, long id) { 

       Toast.makeText(getActivity(), PlaceName[position] + " in favourite", 
Toast.LENGTH_SHORT).show(); 
//Do smth here, set the color of element on item, add to favourite and something else 
       return true; 
      } 
     }); 

答えて

0

をありがとうそのようなものを使用するView

ImageView favorite = view.findViewById(R.id.yourFavoriteImageView); 

あなたのリストをスクロールすると、レイアウトが再びレンダリングされ、変更が再び表示されなくなることに注意してください。

0

view.setBackgroundColor(Color.parseColor( "#222222"));

+0

この場合、アイテム全体の背景色を変更しますが、リストアイテムの1つの要素の色のみを変更する必要があります –

関連する問題