Join FlipAndroid.COM Telegram Group: https://t.me/joinchat/F_aqThGkhwcLzmI49vKAiw


Cómo establecer el divisor (a nulo) de un diseño personalizado ListFragment

Estoy tratando de entender cómo trabajar con listfragments y adaptadores personalizados. Así que construir este pequeño ejemplo y me preguntaba dónde podría establecer el divisor de mi listview a null.

He encontrado maneras diferentes: – android: dividerHeight = "1dip" – android: divider = "@ android: color / transparent" Pero no tengo un diseño XML con listview

También vi algo como listview.setDivider (null), pero no sé dónde puedo usar ese método en mi código debido al uso de listfragments.

Mi código:

listview_item_row.xml <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="horizontal" > <ImageView android:id="@+id/ivCountry" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/ic_launcher" android:layout_weight="1"/> <TextView android:id="@+id/tvCountry" android:layout_width="wrap_content" android:layout_height="fill_parent" android:gravity="center_vertical" android:text="TextView" android:layout_weight="4" /> </LinearLayout> 

Clase CountryList

 public class CountryList extends ListFragment { Country[] countries2 = new Country[] { new Country("Netherlands"), new Country(R.drawable.bas,"Basque Country") }; @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { CountryAdapter adapter = new CountryAdapter(inflater.getContext(),R.layout.listview_item_row,countries2); setListAdapter(adapter); getListView().setDivider(null); return super.onCreateView(inflater, container, savedInstanceState); } 

My CountryAdapter

 public class CountryAdapter extends ArrayAdapter<Country>{ Context context; int layoutResourceId; Country[] data = null; public CountryAdapter(Context context, int layoutResourceId, Country[] data) { super(context,layoutResourceId,data); this.context = context; this.layoutResourceId = layoutResourceId; this.data = data; } @Override public View getView(int position, View convertView, ViewGroup parent) { // TODO Auto-generated method stub View row = convertView; CountryHolder holder = null; if (row == null) { LayoutInflater inflater = ((Activity)context).getLayoutInflater(); row = inflater.inflate(layoutResourceId, parent,false); holder = new CountryHolder(); holder.imgIcon = (ImageView) row.findViewById(R.id.ivCountry); holder.txtTitle = (TextView)row.findViewById(R.id.tvCountry); row.setTag(holder); } else { holder = (CountryHolder) row.getTag(); } Country country = data[position]; holder.txtTitle.setText(country.getTitle()); holder.imgIcon.setImageResource(country.getIcon()); return row; } static class CountryHolder { ImageView imgIcon; TextView txtTitle; } 

2 Solutions collect form web for “Cómo establecer el divisor (a nulo) de un diseño personalizado ListFragment”

Siempre puede establecer una vista personalizada para el ListFragment devolviendo una vista en onCreateView () pero necesita tener un ListView en ella con un "@ id / android: list" como se explica en la documentación .

En tu xml podrías hacer android:divider="@null" o en si realmente quieres hacerlo en tu código getListView().setDivider(null); (En el método onActivityCreated ()).

Dentro de la onCreateView uso:

getListView().setDivider(null);

FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.