android.widget.ListView.getPaddingBottom()方法的使用及代码示例

x33g5p2x  于2022-01-23 转载在 其他  
字(15.8k)|赞(0)|评价(0)|浏览(139)

本文整理了Java中android.widget.ListView.getPaddingBottom()方法的一些代码示例,展示了ListView.getPaddingBottom()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。ListView.getPaddingBottom()方法的具体详情如下:
包路径:android.widget.ListView
类名称:ListView
方法名:getPaddingBottom

ListView.getPaddingBottom介绍

暂无

代码示例

代码示例来源:origin: stackoverflow.com

public class Utility {
  public static void setListViewHeightBasedOnChildren(ListView listView) {
    ListAdapter listAdapter = listView.getAdapter();
    if (listAdapter == null) {
      // pre-condition
      return;
    }

    int totalHeight = listView.getPaddingTop() + listView.getPaddingBottom();

    for (int i = 0; i < listAdapter.getCount(); i++) {
      View listItem = listAdapter.getView(i, null, listView);
      if (listItem instanceof ViewGroup) {
        listItem.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
       }

       listItem.measure(0, 0);
       totalHeight += listItem.getMeasuredHeight();
    }

    ViewGroup.LayoutParams params = listView.getLayoutParams();
    params.height = totalHeight + (listView.getDividerHeight() * (listAdapter.getCount() - 1));
    listView.setLayoutParams(params);
  }
}

代码示例来源:origin: stackoverflow.com

public void setListViewHeightBasedOnChildren(ListView listView) {
  ListAdapter listAdapter = listView.getAdapter();
  if (listAdapter == null) {
    // pre-condition
    return;
  }

  int totalHeight = listView.getPaddingTop() + listView.getPaddingBottom();
  int desiredWidth = MeasureSpec.makeMeasureSpec(listView.getWidth(), MeasureSpec.AT_MOST);
  for (int i = 0; i < listAdapter.getCount(); i++) {
    View listItem = listAdapter.getView(i, null, listView);

    if(listItem != null){
      // This next line is needed before you call measure or else you won't get measured height at all. The listitem needs to be drawn first to know the height.
      listItem.setLayoutParams(new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT, RelativeLayout.LayoutParams.WRAP_CONTENT));
      listItem.measure(desiredWidth, MeasureSpec.UNSPECIFIED);
      totalHeight += listItem.getMeasuredHeight();

    }
  }

  ViewGroup.LayoutParams params = listView.getLayoutParams();
  params.height = totalHeight + (listView.getDividerHeight() * (listAdapter.getCount() - 1));
  listView.setLayoutParams(params);
  listView.requestLayout();
}

代码示例来源:origin: stackoverflow.com

public void setListViewHeightBasedOnChildren(ListView listView) {
   ListAdapter listAdapter = listView.getAdapter();
   if (listAdapter == null) {
     return;
   }
   int totalHeight = listView.getPaddingTop() + listView.getPaddingBottom();
   for (int i = 0; i < listAdapter.getCount(); i++) {
     View listItem = listAdapter.getView(i, null, listView);
     if (listItem instanceof ViewGroup)
       listItem.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
     listItem.measure(0, 0);
     totalHeight += listItem.getMeasuredHeight();
   }
   ViewGroup.LayoutParams params = listView.getLayoutParams();
   params.height = totalHeight + (listView.getDividerHeight() * (listAdapter.getCount() - 1));
   listView.setLayoutParams(params);
 }

代码示例来源:origin: stackoverflow.com

public void setListViewHeightBasedOnChildren(ListView listView) {
  ListAdapter listAdapter = listView.getAdapter();
  if (listAdapter == null) {
    return;
  }

  int totalHeight = listView.getPaddingTop() + listView.getPaddingBottom();
  for (int i = 0; i < listAdapter.getCount(); i++) {
    View listItem = listAdapter.getView(i, null, listView);
    if (listItem instanceof ViewGroup)
      listItem.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
    listItem.measure(0, 0);
    totalHeight += listItem.getMeasuredHeight();
  }

  ViewGroup.LayoutParams params = listView.getLayoutParams();
  params.height = totalHeight + (listView.getDividerHeight() * (listAdapter.getCount() - 1));
  listView.setLayoutParams(params);
}

代码示例来源:origin: stackoverflow.com

public static void setListViewHeightBasedOnChildren(ListView listView) {
   ListAdapter listAdapter = listView.getAdapter();
   if (listAdapter == null) {
     // pre-condition
     return;
   }
   int totalHeight = listView.getPaddingTop() + listView.getPaddingBottom();
   for (int i = 0; i < listAdapter.getCount(); i++) {
     View listItem = listAdapter.getView(i, null, listView);
     if (listItem instanceof ViewGroup) {
       listItem.setLayoutParams(new ViewGroup.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT));
     }
     listItem.measure(0, 0);
     totalHeight += listItem.getMeasuredHeight();
   }
   ViewGroup.LayoutParams params = listView.getLayoutParams();
   params.height = totalHeight + (listView.getDividerHeight() * (listAdapter.getCount() - 1));
   listView.setLayoutParams(params);
 }

代码示例来源:origin: stackoverflow.com

public static void setListViewHeightBasedOnChildren(ListView listView) {
       ListAdapter listAdapter = listView.getAdapter();
      if (listAdapter == null) {
      // pre-condition
         return;
      }

      int totalHeight = listView.getPaddingTop() + listView.getPaddingBottom();
      for (int i = 0; i < listAdapter.getCount(); i++) {
         View listItem = listAdapter.getView(i, null, listView);
         if (listItem instanceof ViewGroup) {
          listItem.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
         }
         listItem.measure(0, 0);
         totalHeight += listItem.getMeasuredHeight();
      }

      ViewGroup.LayoutParams params = listView.getLayoutParams();
      params.height = totalHeight + (listView.getDividerHeight() * (listAdapter.getCount() - 1));
           listView.setLayoutParams(params);
    }
}

代码示例来源:origin: stackoverflow.com

public static void setListViewHeightBasedOnChildren(ListView listView) {
      ListAdapter listAdapter = listView.getAdapter();
     if (listAdapter == null) {
     // pre-condition
        return;
     }
     int totalHeight = listView.getPaddingTop() + listView.getPaddingBottom();
     for (int i = 0; i < listAdapter.getCount(); i++) {
        View listItem = listAdapter.getView(i, null, listView);
        if (listItem instanceof ViewGroup) {
         listItem.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
        }
        listItem.measure(0, 0);
        totalHeight += listItem.getMeasuredHeight();
     }
     ViewGroup.LayoutParams params = listView.getLayoutParams();
     params.height = totalHeight + (listView.getDividerHeight() * (listAdapter.getCount() - 1));
          listView.setLayoutParams(params);
   }

代码示例来源:origin: stackoverflow.com

public static void setListViewHeightBasedOnChildren(ListView listView) {
    ListAdapter listAdapter = listView.getAdapter();
   if (listAdapter == null) {
   // pre-condition
      return;
   }
   int totalHeight = listView.getPaddingTop() + listView.getPaddingBottom();
   for (int i = 0; i < listAdapter.getCount(); i++) {
      View listItem = listAdapter.getView(i, null, listView);
      if (listItem instanceof ViewGroup) {
       listItem.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
      }
      listItem.measure(0, 0);
      totalHeight += listItem.getMeasuredHeight();
   }
   ViewGroup.LayoutParams params = listView.getLayoutParams();
   params.height = totalHeight + (listView.getDividerHeight() * (listAdapter.getCount() - 1));
        listView.setLayoutParams(params);
 }

代码示例来源:origin: stackoverflow.com

public class Utility {
 public static void setListViewHeightBasedOnChildren(ListView listView) {
    ListAdapter listAdapter = listView.getAdapter();
   if (listAdapter == null) {
   // pre-condition
      return;
   }
   int totalHeight = listView.getPaddingTop() + listView.getPaddingBottom();
   for (int i = 0; i < listAdapter.getCount(); i++) {
      View listItem = listAdapter.getView(i, null, listView);
      if (listItem instanceof ViewGroup) {
       listItem.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
      }
      listItem.measure(0, 0);
      totalHeight += listItem.getMeasuredHeight();
   }
   ViewGroup.LayoutParams params = listView.getLayoutParams();
   params.height = totalHeight + (listView.getDividerHeight() * (listAdapter.getCount() - 1));
        listView.setLayoutParams(params);
 }
}

代码示例来源:origin: stackoverflow.com

public static void setListViewHeightBasedOnChildren(ListView listView) {
   ListAdapter listAdapter = listView.getAdapter();
   if (listAdapter == null) {
     // pre-condition
     return;
   }
   int totalHeight = listView.getPaddingTop()
       + listView.getPaddingBottom();
   for (int i = 0; i < listAdapter.getCount(); i++) {
     View listItem = listAdapter.getView(i, null, listView);
     if (listItem instanceof ViewGroup) {
       listItem.setLayoutParams(new LayoutParams(
           LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
     }
     listItem.measure(0, 0);
     totalHeight += listItem.getMeasuredHeight();
   }
   ViewGroup.LayoutParams params = listView.getLayoutParams();
   params.height = totalHeight
       + (listView.getDividerHeight() * (listAdapter.getCount() - 1));
   listView.setLayoutParams(params);
 }

代码示例来源:origin: stackoverflow.com

public static void setListViewHeightBasedOnChildren(ListView listView) {
   ListAdapter listAdapter = listView.getAdapter();
  if (listAdapter == null) {
  // pre-condition

     return;
  }

int totalHeight = listView.getPaddingTop() + listView.getPaddingBottom();
for (int i = 0; i < 5; i++) //here you can set 5 row at a time if row excceded the scroll automatically available
{
  View listItem = listAdapter.getView(i, null, listView);
  if (listItem instanceof ViewGroup) {
     listItem.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
  }
   listItem.measure(0, 0);
   totalHeight += listItem.getMeasuredHeight();
}

 ViewGroup.LayoutParams params = listView.getLayoutParams();
 params.height = totalHeight + (listView.getDividerHeight() * (listAdapter.getCount() - 1));
 listView.setLayoutParams(params);

}

代码示例来源:origin: stackoverflow.com

public class AppUtil{
public static void setListViewHeightBasedOnChildren(ListView listView) {
    if (listView == null) {
      return;
    }
    ListAdapter listAdapter = listView.getAdapter();
    if (listAdapter == null) {
      // pre-condition
      return;
    }

    int totalHeight = listView.getPaddingTop() + listView.getPaddingBottom();
    for (int i = 0; i < listAdapter.getCount(); i++) {
      View listItem = listAdapter.getView(i, null, listView);
      if (listItem instanceof ViewGroup) {
        listItem.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
      }
      listItem.measure(0, 0);
      totalHeight += listItem.getMeasuredHeight();
    }

    LayoutParams params = listView.getLayoutParams();
    params.height = totalHeight + (listView.getDividerHeight() * (listAdapter.getCount() - 1));
    listView.setLayoutParams(params);
  }

}

代码示例来源:origin: stackoverflow.com

import android.view.View;
import android.view.ViewGroup;
import android.view.ViewGroup.LayoutParams;
import android.widget.ListAdapter;
import android.widget.ListView;

public class Utility {
    public static void setListViewHeightBasedOnChildren(ListView listView) {
       ListAdapter listAdapter = listView.getAdapter();
      if (listAdapter == null) {
      // pre-condition
         return;
      }

      int totalHeight = listView.getPaddingTop() + listView.getPaddingBottom();
      for (int i = 0; i < listAdapter.getCount(); i++) {
         View listItem = listAdapter.getView(i, null, listView);
         if (listItem instanceof ViewGroup) {
          listItem.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
         }
         listItem.measure(0, 0);
         totalHeight += listItem.getMeasuredHeight();
      }

      LayoutParams params = listView.getLayoutParams();
      params.height = totalHeight + (listView.getDividerHeight() * (listAdapter.getCount() - 1));
           listView.setLayoutParams(params);
    }
   }

代码示例来源:origin: stackoverflow.com

public static void setListViewHeightBasedOnChildren(ListView listView) {
  ListAdapter listAdapter = listView.getAdapter();
  if (listAdapter == null || listAdapter.getCount() < 2) {
    // pre-condition
    return;
  }

  int totalHeight = 0;
  int widthMeasureSpec = View.MeasureSpec.makeMeasureSpec(BCTDApp.getDisplaySize().width, View.MeasureSpec.AT_MOST);
  int heightMeasureSpec = View.MeasureSpec.makeMeasureSpec(0, View.MeasureSpec.UNSPECIFIED);
  ViewGroup.LayoutParams lp = new ViewGroup.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT);

  for (int i = 0; i < listAdapter.getCount(); i++) {
    View listItem = listAdapter.getView(i, null, listView);
    if (listItem instanceof ViewGroup) listItem.setLayoutParams(lp);
    listItem.measure(widthMeasureSpec, heightMeasureSpec);
    totalHeight += listItem.getMeasuredHeight();
  }

  totalHeight += listView.getPaddingTop() + listView.getPaddingBottom();
  totalHeight += (listView.getDividerHeight() * (listAdapter.getCount() - 1));
  ViewGroup.LayoutParams params = listView.getLayoutParams();
  params.height = totalHeight;
  listView.setLayoutParams(params);
  listView.requestLayout();
}

代码示例来源:origin: stackoverflow.com

public void setDynamicHeight(ListView listView) {
ListAdapter listAdapter = listView.getAdapter();
  if (listAdapter == null) {
  return;
  }
int totalHeight = listView.getPaddingTop() + listView.getPaddingBottom();
int desiredWidth = MeasureSpec.makeMeasureSpec(listView.getWidth(), MeasureSpec.AT_MOST);
for (int i = 0; i < listAdapter.getCount(); i++) {
  View listItem = listAdapter.getView(i, null, listView);

  if(listItem != null){
    listItem.setLayoutParams(new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT, RelativeLayout.LayoutParams.WRAP_CONTENT));
    listItem.measure(desiredWidth, MeasureSpec.UNSPECIFIED);
    totalHeight += listItem.getMeasuredHeight();

  }
}
ViewGroup.LayoutParams params = listView.getLayoutParams();
params.height = totalHeight + (listView.getDividerHeight() * (listAdapter.getCount() - 1));
listView.setLayoutParams(params);
listView.requestLayout();}

代码示例来源:origin: geniusgithub/AndroidDialer

/**
 * Adds padding to the bottom of the given {@link ListView} so that the floating action button
 * does not obscure any content.
 *
 * @param listView to add the padding to
 * @param res valid resources object
 */
public static void addBottomPaddingToListViewForFab(ListView listView, Resources res) {
  final int fabPadding = res.getDimensionPixelSize(
      R.dimen.floating_action_button_list_bottom_padding);
  listView.setPaddingRelative(listView.getPaddingStart(), listView.getPaddingTop(),
      listView.getPaddingEnd(), listView.getPaddingBottom() + fabPadding);
  listView.setClipToPadding(false);
}

代码示例来源:origin: geniusgithub/AndroidDialer

/**
   * Adds padding to the bottom of the given {@link ListView} so that the floating action button
   * does not obscure any content.
   *
   * @param listView to add the padding to
   * @param res valid resources object
   */
  public static void addBottomPaddingToListViewForFab(ListView listView, Resources res) {
    final int fabPadding = res.getDimensionPixelSize(
        R.dimen.floating_action_button_list_bottom_padding);
    listView.setPaddingRelative(listView.getPaddingStart(), listView.getPaddingTop(),
        listView.getPaddingEnd(), listView.getPaddingBottom() + fabPadding);
    listView.setClipToPadding(false);
  }
}

代码示例来源:origin: stackoverflow.com

public static void setListViewHeightBasedOnChildren(final ListView listView) {
     listView.post(new Runnable() {
       @Override
       public void run() {
         ListAdapter listAdapter = listView.getAdapter();
         if (listAdapter == null) {
           return;
         }
         int totalHeight = listView.getPaddingTop() + listView.getPaddingBottom();
         int listWidth = listView.getMeasuredWidth();
     for (int i = 0; i < listAdapter.getCount(); i++) {
           View listItem = listAdapter.getView(i, null, listView);
           listItem.measure(
               View.MeasureSpec.makeMeasureSpec(listWidth, View.MeasureSpec.EXACTLY),
           View.MeasureSpec.makeMeasureSpec(0, View.MeasureSpec.UNSPECIFIED));
           totalHeight += listItem.getMeasuredHeight();
           Log.d("listItemHeight " + listItem.getMeasuredHeight(), "********");
         }
         Log.d("totalHeight " + totalHeight, "********");
         ViewGroup.LayoutParams params = listView.getLayoutParams();
         params.height = (int) ((totalHeight + (listView.getDividerHeight() * (listAdapter.getCount() - 1))));
         listView.setLayoutParams(params);
         listView.requestLayout();
       }
     });
   }

代码示例来源:origin: stackoverflow.com

public static void setListViewHeightBasedOnChildren(final ListView listView) {
 listView.post(new Runnable() {
   @Override
   public void run() {
     ListAdapter listAdapter = listView.getAdapter();
     if (listAdapter == null) {
       return;
     }
     int totalHeight = listView.getPaddingTop() + listView.getPaddingBottom();
     int listWidth = listView.getMeasuredWidth();
     for (int i = 0; i < listAdapter.getCount(); i++) {
       View listItem = listAdapter.getView(i, null, listView);
       listItem.measure(
           View.MeasureSpec.makeMeasureSpec(listWidth, View.MeasureSpec.EXACTLY),
           View.MeasureSpec.makeMeasureSpec(0, View.MeasureSpec.UNSPECIFIED));
       totalHeight += listItem.getMeasuredHeight();
       Log.d("listItemHeight" + listItem.getMeasuredHeight(), "___________");
     }
     ViewGroup.LayoutParams params = listView.getLayoutParams();
     params.height = (int) ((totalHeight + (listView.getDividerHeight() * (listAdapter.getCount() - 1))));
     listView.setLayoutParams(params);
     listView.requestLayout();
   }
 });
 }

代码示例来源:origin: geniusgithub/AndroidDialer

private static void addPaddingToView(ListView listView, int parentWidth,
    int listSpaceWeight, int listViewWeight)
{
  if (listSpaceWeight > 0 && listViewWeight > 0) {
    double paddingPercent = (double) listSpaceWeight / (double)
        (listSpaceWeight * 2 + listViewWeight);
    listView.setPadding(
        (int) (parentWidth * paddingPercent * TEXT_LEFT_PADDING_TO_CARD_PADDING_RATIO),
        listView.getPaddingTop(),
        (int) (parentWidth * paddingPercent * TEXT_LEFT_PADDING_TO_CARD_PADDING_RATIO),
        listView.getPaddingBottom());
    // The EdgeEffect and ScrollBar need to span to the edge of the ListView's padding.
    listView.setClipToPadding(false);
    listView.setScrollBarStyle(View.SCROLLBARS_OUTSIDE_OVERLAY);
  }
}

相关文章

ListView类方法