Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> Android開發實例 >> [Android1.6]繼承BaseAdapter為GridView設置數據時設置setLayoutParams時注意

[Android1.6]繼承BaseAdapter為GridView設置數據時設置setLayoutParams時注意

編輯:Android開發實例

正文

  一、問題代碼
 

    public View getView(int position, View convertView, ViewGroup parent) {
        if (convertView == null) {
            
            TextView item = new TextView(context);
            item.setText("Test");
            item.setLayoutParams(new LayoutParams(
                    LayoutParams.WRAP_CONTENT,
                    LayoutParams.WRAP_CONTENT));
            
            return item;
        } else
            return convertView;
    }

    代碼說明:

      a).  LayoutParams是指android.view.ViewGroup.LayoutParams。

      b).  程序運行後將出錯,錯誤很莫名其妙且不固定。

 

  二、問題分析
 

    經調試發現在獲取LayoutParams時內部是將這個屬性轉到android.widget.AbsListView.LayoutParams,也就是這裡setLayoutParams弄錯了,這裡正確的方法是使用GridView.LayoutParams,替換之後問題得以解決。

 

結束
 

  之前一直是復制、粘貼這部分的代碼,所以沒注意有這問題,這裡記錄一下。
 

轉自:http://www.cnblogs.com/over140/archive/2010/09/14/1825649.html

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved