How to display ListView in table form in android

I want to display ListView in table format.

ListView should have rows and columns, such as excel sheet.

Can anyone suggest how to implement this?

+4
source share
2 answers

Create a Custom ListView and specify the required xml view (which will be your TableRow).

0
source
  class CustomAdapterCoupons extends BaseAdapter { /* Variable Declaration */ private Context context; private List<CouponBean> list; private CouponBean entry; public com.pocketJini.util.ImageLoader imageLoader; private LayoutInflater inflater; public CustomAdapterCoupons(Context context, List<CouponBean> list) { this.context = context; this.list = list; inflater = (LayoutInflater) CouponsActivity.this .getSystemService(Context.LAYOUT_INFLATER_SERVICE); imageLoader = new com.pocketJini.util.ImageLoader(context); } public int getCount() { // TODO Auto-generated method stub return list.size(); } public Object getItem(int position) { // TODO Auto-generated method stub return list.get(position); } public long getItemId(int position) { // TODO Auto-generated method stub return position; } public class ViewHolder { public TextView couponName, couponCode, usageDescription, expirationDate; public ImageView couponImage; } public View getView(final int position, View convertView, ViewGroup parent) { // TODO Auto-generated method stub ViewHolder holder = null; entry = list.get(position); if (convertView == null) { convertView = inflater.inflate(R.layout.coupons_list_layout, null); holder = new ViewHolder(); holder.couponName = (TextView) convertView .findViewById(R.id.CouponListCouponName); holder.couponCode = (TextView) convertView .findViewById(R.id.CouponListCouponCode); holder.expirationDate = (TextView) convertView .findViewById(R.id.CouponListDetailDate); holder.usageDescription = (TextView) convertView .findViewById(R.id.CouponListUsageDescription); holder.couponImage = (ImageView) convertView .findViewById(R.id.CouponListLeftImage); convertView.setTag(holder); // Set the display text } else { holder = (ViewHolder) convertView.getTag(); } holder.couponName.setText(entry.getCouponName()); holder.expirationDate.setText(context .getString(R.string.Coupon_Expiration_Date) + "\n" + entry.getExpirationDate()); holder.usageDescription.setText(entry.getUsageDescription()); holder.couponCode.setText(entry.getCouponCode()); holder.couponImage.setTag(Data.URL_BASE_2 + entry.getCouponImage()); imageLoader.DisplayImage(Data.URL_BASE_2 + entry.getCouponImage(), (Activity) context, holder.couponImage); Log.v(Data.LOG3, "image" + entry.getCouponImage()); final Button savedMyCoupons = (Button) convertView .findViewById(R.id.CouponListAddtoMyCouponButton); if (entry.getSavedMyCoupons().equalsIgnoreCase("N")) { savedMyCoupons.setText(context .getString(R.string.Add_to_myCoupons)); savedMyCoupons.setBackgroundResource(R.drawable.done_btn); savedMyCoupons.setTag(entry.getCouponId().toString()); savedMyCoupons.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { // TODO Auto-generated method stub createProgressDialog(); new Loader() .execute(savedMyCoupons.getTag().toString()); } }); } else if (entry.getSavedMyCoupons().equalsIgnoreCase("Y")) { savedMyCoupons.setText(context .getString(R.string.Already_Added_to_my_coupons)); savedMyCoupons.setBackgroundColor(Color.WHITE); savedMyCoupons.setTextColor(Color.BLACK); } // display the view corresponding to data at specified position return convertView; } } 
+1
source

Source: https://habr.com/ru/post/1403836/


All Articles