Pregunta

Tengo un listfragment que contiene una lista, sin embargo, OnlistitemClick nunca se llama. No estoy usando getListView (), que sospecho que es el problema. Estoy sacando mi vista de lista del XML como tal:

    list = (ListView) getActivity().findViewById(android.R.id.list);

Y luego configurar el adaptador así:

    list.setAdapter(new CustomAdapter(getActivity(), R.layout.title, mCursor, new String[]{"title"},  new int[]{R.id.my_title}) );

Como necesito configurar el adaptador en la lista, tampoco uso setListAdapter (). ¿No es posible extraer la lista del XML y usar OnlistitemClick? Me gustaría mantener mi vista de lista en el XML para que no tenga que configurar todas las propiedades programáticamente.

Si esto no es posible, ¿cómo puedo seleccionar elementos en mi lista?

Gracias

¿Fue útil?

Solución

ESTÁ BIEN. Prueba esta respuesta. Mantenga su archivo de diseño tal como sea. Anule el siguiente método en su clase FragmentList:

    @Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
        Bundle savedInstanceState)
{
    return inflater.inflate(R.layout.your_fragment_layout, container, false);
}

Asegúrese de que su diseño defina una vista de lista con la ID correcta, de la siguiente manera:

 <ListView android:id="@id/android:list"
           android:layout_width="match_parent"
           android:layout_height="match_parent"
           android:layout_weight="1"
           android:drawSelectorOnTop="false"/>

Entonces, solo llame a fragmentList :: setListAdapter:

setListAdapter(new CustomAdapter(getActivity(), R.layout.title, mCursor, new String[]{"title"},  new int[]{R.id.my_title}) );

Debería funcionar, Ticky-Boo.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top