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"