Android布局琐碎(原)
一、文本編輯框字符數限制問題
方法一:
在 xml 文件中設置文本編輯框屬性作字符數限制
如:android:maxLength="10" 即限制最大輸入字符個數為10
方法二:
在代碼中使用InputFilter 進行過濾
//editText.setFilters(new InputFilter[]{new InputFilter.LengthFilter(20)}); 即限定最大輸入字符數為20
二、margin與padding
Android的Margin和Padding跟Html的是一樣的。如下圖所示:黃色部分為Padding,灰色部分為Margin。
通俗的理解 Padding 為內邊框,Margin 為外邊框
三、Android給listview設置分割線
android:dividerHeight=""
android:divider=""
四、listview包含不同布局item
ListView包含不同Item的布局
1)重寫 getViewTypeCount() – 該方法返回多少個不同的布局
2)重寫 getItemViewType(int) – 根據position返回相應的Item
3)根據view item的類型,在getView中創建正確的convertView
部分代碼如下:
@Overridepublic View getView(int position, View convertView, ViewGroup parent) {int type = (Integer) list.get(position).get("type");viewHolder1 holder1 = null;viewHolder2 holder2 = null;switch (type) {case TYPE_1:convertView = inflater.inflate(R.layout.add_customer_item2, parent,false);holder1 = new viewHolder1();holder1.textView1 = (TextView) convertView.findViewById(R.id.company_name);holder1.textView2 = (TextView) convertView.findViewById(R.id.customer_coder);holder1.editText1 = (EditText) convertView.findViewById(R.id.company_name_value);String editText1Str = (String) list.get(position).get("company_name_value");holder1.editText1.setText(editText1Str);holder1.editText2 = (EditText) convertView.findViewById(R.id.customer_coder_value);String editText2Str = (String) list.get(position).get("customer_coder_value");holder1.editText2.setText(editText2Str);convertView.setTag(holder1);break;case TYPE_2:convertView = inflater.inflate(R.layout.add_customer_item3, parent,false);holder2 = new viewHolder2();holder2.textView1 = (TextView) convertView.findViewById(R.id.contact_name);holder2.textView2 = (TextView) convertView.findViewById(R.id.contact_tel);holder2.textView3 = (TextView) convertView.findViewById(R.id.contact_adress);holder2.editText1 = (EditText) convertView.findViewById(R.id.contact_name_value);String editHolder2Text1Str = (String) list.get(position).get("contact_name_value");holder2.editText1.setText(editHolder2Text1Str);holder2.editText2 = (EditText) convertView.findViewById(R.id.contact_tel_value);String editHolder2Text2Str = (String) list.get(position).get("contact_tel_value");holder2.editText2.setText(editHolder2Text2Str);holder2.editText3 = (EditText) convertView.findViewById(R.id.contact_address_value);String editHolderText3Str = (String) list.get(position).get("contact_address_value");holder2.editText3.setText(editHolderText3Str);convertView.setTag(holder2);break;}return convertView;}轉載于:https://www.cnblogs.com/HelloGuang/p/3699371.html
總結
以上是生活随笔為你收集整理的Android布局琐碎(原)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ExtJS 等待两个/多个store加载
- 下一篇: 【Android Developers