2017-01-07 6 views
0

Я меняю цвет фона нажатого элементаAndroid ListView теряет цвет фона при прокрутке

public View onCreateView(final LayoutInflater inflater, ViewGroup container, 
         Bundle savedInstanceState) { 
    View view=inflater.inflate(R.layout.layout_create_msg, container, false); 

    final EditText tbsendto=(EditText) view.findViewById(R.id.tbsendto); 

    System.out.println("Aqui"); 

    SharedPreferences userDetails = getActivity().getBaseContext().getSharedPreferences("Login", Context.MODE_PRIVATE); 
    username=userDetails.getString("Unm",""); 


    GetUsersMsg getMsg=new GetUsersMsg(getActivity()); 
    getMsg.execute("new",username); 
    final ListView list=(ListView)view.findViewById(R.id.lv_users_new_msg); 

    list.setOnItemClickListener(new AdapterView.OnItemClickListener() { 
     @Override 
     public void onItemClick(AdapterView<?> adapterView, View itemview, int i, long l) { 
     View v=itemview; 
      v=inflater.inflate(R.layout.layout_create_msg,null); 

      final String item = ((TextView) itemview).getText().toString(); 

      System.out.println(item); 
      String textsendto; 
      System.out.println(tbsendto.getText().toString()); 
      if (tbsendto.getText().toString().contains(item)){ 
       textsendto=tbsendto.getText().toString().replace(" " + item,""); 
       itemview.setBackgroundColor(Color.parseColor("#19394a")); 
       ((TextView) itemview).setTextColor(Color.WHITE); 

      }else { 
       textsendto=tbsendto.getText().toString() + " " + item; 
       itemview.setBackgroundColor(Color.WHITE); 
       ((TextView) itemview).setTextColor(Color.parseColor("#19394a")); 
      } 


      tbsendto.setText(textsendto); 
      tbsendto.setSelection(tbsendto.getText().length()); 

     } 
    }); 

    return view; 
} 

Но когда я прокрутить ListView и деталь выходит экран теряет заданный цвет. Selecting items in the listivew

Sctrolling

Что я делаю неправильно и почему он теряет данный цвет? Спасибо!

ответ

0

Потому что при прокрутке зрения воссоздаются. Вы должны установить цвет в своем адаптере.

+0

Не могли бы вы рассказать мне, как это будет? – Ko0kiE