91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Android編程如何處理窗口控件大小,形狀,像素等UI元素工具類

發布時間:2021-08-25 14:55:17 來源:億速云 閱讀:134 作者:小新 欄目:移動開發

小編給大家分享一下Android編程如何處理窗口控件大小,形狀,像素等UI元素工具類,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

具體如下:

/**
* 處理窗口控件大小,形狀,像素等工具類
*
* @author chen.lin
*
*/
public class UITools {
  /**
  * 把像素轉化為dp
  *
  * @param context
  * @param px
  * @return
  */
  public static int px2dip(Context context, float px) {
    float density = context.getResources().getDisplayMetrics().density;
    return (int) (px * density + 0.5f);
  }
  /**
   * 設置窗體的寬度
   * @param context
   */
  public static void setWinWidth(Activity context) {
    DisplayMetrics metric = new DisplayMetrics();
    context.getWindowManager().getDefaultDisplay().getMetrics(metric);
    LayoutParams p = context.getWindow().getAttributes();
    p.width = (int) (metric.widthPixels * 0.8);
    context.getWindow().setAttributes(p);
  }
  /**
   * 設置彈出窗口中listview的高度
   *
   * @param listView
   */
  public static void setListViewHeight(ListView listView) {
    // 獲取ListView對應的Adapter
    ListAdapter listAdapter = listView.getAdapter();
    if (listAdapter == null) {
      return;
    }
    int totalHeight = 0;
    for (int i = 0, len = listAdapter.getCount(); i < len; i++) { // listAdapter.getCount()返回數據項的數目
      View listItem = listAdapter.getView(i, null, listView);
      listItem.measure(0, 0); // 計算子項View 的寬高
      totalHeight += listItem.getMeasuredHeight(); // 統計所有子項的總高度
    }
    ViewGroup.LayoutParams params = listView.getLayoutParams();
    params.height = totalHeight + (listView.getDividerHeight() * (listAdapter.getCount() - 1));
    // listView.getDividerHeight()獲取子項間分隔符占用的高度
    // params.height最后得到整個ListView完整顯示需要的高度
    listView.setLayoutParams(params);
  }
}

以上是“Android編程如何處理窗口控件大小,形狀,像素等UI元素工具類”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

乌拉特前旗| 全南县| 丰台区| 绥阳县| 郴州市| 郁南县| 应城市| 通化县| 大姚县| 武宁县| 广西| 中牟县| 桐柏县| 商城县| 类乌齐县| 左云县| 商丘市| 大埔县| 宾川县| 奎屯市| 滨海县| 南安市| 达州市| 灵台县| 嘉峪关市| 横山县| 马龙县| 安顺市| 上蔡县| 梨树县| 奉化市| 松原市| 银川市| 安陆市| 嫩江县| 海淀区| 孟津县| 台南县| 莱阳市| 仁布县| 浙江省|