Android 在列表片段中,首次单击列表项不会更改该项的背景

Android 在列表片段中,首次单击列表项不会更改该项的背景,android,background,simplecursoradapter,listitem,android-listfragment,Android,Background,Simplecursoradapter,Listitem,Android Listfragment,我使用列表片段来显示项目列表,我希望这样,无论何时单击项目,其背景都应该更改,并且也在更改,但当第一次单击任何项目时,该项目的背景中没有任何更改。请帮助我。我的密码在这里 片段类:- public class Categoryfragment extends ListFragment { DBhelper dh; Cursor cursor; @Override public void onCreate(Bundle savedInstanceState) {

我使用列表片段来显示项目列表,我希望这样,无论何时单击项目,其背景都应该更改,并且也在更改,但当第一次单击任何项目时,该项目的背景中没有任何更改。请帮助我。我的密码在这里

片段类:-

public class Categoryfragment extends ListFragment 

 {
   DBhelper dh;
  Cursor cursor;
      @Override
    public void onCreate(Bundle savedInstanceState)
{       
// TODO Auto-generated method stub
  super.onCreate(savedInstanceState);
      dh = new DBhelper(getActivity()); 
  refreshadpater();
}
  @Override
    public void onActivityCreated(Bundle savedInstanceState)
     {
    super.onActivityCreated(savedInstanceState);
     }

    public void refreshadpater()
     {
          dh = new DBhelper(getActivity());
          cursor= dh.fetchAllcategories();
      String []columns= {"category_name"};
      int []textid = {R.id.text1};
       SimpleCursorAdapter adapter = new SimpleCursorAdapter(getActivity(), R.layout.list,    cursor, columns, textid);
        setListAdapter(adapter);

 }


    @Override
    public void onListItemClick(ListView l, View v, int position, long id)
     {  

       getListView().setChoiceMode(ListView.CHOICE_MODE_SINGLE);
       LinearLayout ii=(LinearLayout)getActivity().findViewById(R.id.lin);
         ii.setBackgroundResource(R.drawable.item_selector);

            int id1 =(int)id ;

      Subcategoryfragment fragment = (Subcategoryfragment)   getFragmentManager().findFragmentById(R.id.secondFragment);
      TextView tv = (TextView)getActivity().findViewById(R.id.sub);

      tv.setText("Sub-cat");
      if (fragment != null && fragment.isInLayout())
      {              
          fragment.refreshadpater1(id1);
//ii.挫折资源(R.可提取的项目_选择器)

}

list.xml

    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
     android:layout_width="fill_parent"
    android:id="@+id/lin"
     android:layout_height="wrap_content"
     android:orientation="horizontal"
     android:background="@drawable/item_selector">

     <TextView android:id="@+id/text1"

       android:textAppearance="?android:attr/textAppearanceLarge"
       android:layout_marginTop="10dp"
       android:layout_marginLeft="10dp"
       android:layout_width="wrap_content"
       android:layout_height="wrap_content"
       android:minHeight="?android:attr/listPreferredItemHeight"

       />

item_selector.xml

第一次触屏是聚焦,第二次触屏是点击。您需要禁用焦点,以便第一次触摸注册为单击。这将为您带来好处:

android:focusable="false"
android:focusableInTouchMode="false"

第一次触摸是聚焦,第二次是点击。您需要禁用焦点,以便第一次触摸注册为单击。这将为您带来好处:

android:focusable="false"
android:focusableInTouchMode="false"
android:focusable="false"
android:focusableInTouchMode="false"