1.android:numColumns=”auto_fit” //GridView的列数设置为自动
2.android:columnWidth=”90dp " //每列的宽度,也就是Item的宽度
3.android:stretchMode=”columnWidth"//缩放与列宽大小同步
4.android:verticalSpacing=”10dp” //两行之间的边距
5.android:horizontalSpacing=”10dp” //两列之间的边距
6.android:cacheColorHint="#00000000" //去除拖动时默认的黑色背景
7.android:listSelector="#00000000" //去除选中时的黄色底色
8.android:scrollbars="none" //隐藏GridView的滚动条
9.android:fadeScrollbars="true" //设置为true就可以实现滚动条的自动隐藏和显示
10.android:fastScrollEnabled="true" //GridView出现快速滚动的按钮(至少滚动4页才会显示)
11.android:fadingEdge="none" //GridView衰落(褪去)边缘颜色为空,缺省值是vertical。(可以理解为上下边缘的提示色)
12.android:fadingEdgeLength="10dip" //定义的衰落(褪去)边缘的长度
13.android:stackFromBottom="true" //设置为true时,你做好的列表就会显示你列表的最下面
14.android:transcriptMode="alwaysScroll" //当你动态添加数据时,列表将自动往下滚动最新的条目可以自动滚动到可视范围内
15.android:drawSelectorOnTop="false" //点击某条记录不放,颜色会在记录的后面成为背景色,内容的文字可见(缺省为false)
案例:Grider显示一行,左右可滑动
public class DensityUtil {
/**
* 根据手机的分辨率从 dp 的单位 转成为 px(像素)
*/
public static int dip2px(Context context, float dpValue) {
final float scale = context.getResources().getDisplayMetrics().density;
return (int) (dpValue * scale + 0.5f);
}
/**
* 根据手机的分辨率从 px(像素) 的单位 转成为 dp
*/
public static int px2dip(Context context, float pxValue) {
final float scale = context.getResources().getDisplayMetrics().density;
return (int) (pxValue / scale + 0.5f);
}
}
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:cacheColorHint="#00000000"
android:divider="#fff"
android:fastScrollEnabled="true"
android:dividerHeight="1.0dip"
android:paddingLeft="3.0dip"
android:paddingRight="3.0dip" />
1. 背景色:(默认是透明的,固定不变的。)
在滚动条滚动的过程中如果实时地去将当前每个Item的显示内容跟背景进行混合运算,
android系统为了优化,用了 android:cacheColorHint 的属性,
在黑色主题下默认的颜色值是#191919,所以就出现了刚才的画面,有一半是黑色的。
如果换背景的颜色直接指定android:cacheColorHint为你所要的颜色。
如果用图片做背景的话,将android:cacheColorHint指定为透明,会牺牲一些效率。
2. 上边和下边阴影 :
android:fadingEdge="none"
3. 行间隔:
listView.setDividerHeight(0);
4. 选中时的颜色:
android:listSelector="@color/pink" listView item 。默认为橙黄底色。
5. 间隔 :
android:divider="@drawablest_driver" 设置分割线的图片资源,如果则只要设置为
android:divider="@drawable/@null" 不想显示分割线
6. 滚动条:
android:scrollbars="none" setVerticalScrollBarEnabled(true);
7. 滚动条:
android:fadeScrollbars="true" 设置为true就可以实现 自动隐藏和显示
8. 自动滑动到最底部:
android:transcriptMode="alwaysScroll"
(显示大量Items的控件实时跟踪、查看信息,希望最新的条目在可视范围内。
通过设置的控件transcriptMode属性可以将Android平台的控件(支持ScrollBar)自动滑动到最底部。)
9. 加快滑动速度:
android:fastScrollEnabled = "true"
10.长按颜色是否覆盖文本
android:drawSelectorOnTop="true" 点击某一条记录,文字被遮住。
android:drawSelectorOnTop="false" 点击某一条记录,文字是可见。
9.在ListView中添加属性:
android:scrollbarTrackVertical="@drawable/scrollbar_vertical_track"
android:scrollbarThumbVertical="@drawable/scrollbar_vertical_thumb"
自定义的xml文件,放在Drawable中,track是指长条,thumb是指短条,然后再xml中定义短条和长条的样式
android:scrollingCache="false"
10.定位最后一行数据:
mlist.setSelection(mlist.size());
11 滚动条样式 android:scrollbarStyle
insideOverlay:默认值,表示在padding区域内并且覆盖在view上
insideInset:表示在padding区域内并且插入在view后面
outsideOverlay:表示在padding区域外并且覆盖在view上,推荐这个
outsideInset:表示在padding区域外并且插入在view后面
案例:解决ScrollView 与之布局显示不全冲突:
//一:测量高度
int totalHeight = 0;
private void setListViewHeightBasedOnChildren(ListView listView) {
android.widget.ListAdapter listAdapter = listView.getAdapter();
if (listAdapter == null) {
return;
}
for (int i = 0; i < listAdapter.getCount(); i++) {
View listItem = listAdapter.getView(i , null, listView);
listItem.measure(0, 0);
totalHeight += listItem.getMeasuredHeight();//测量每一item高度
}
ViewGroup.LayoutParams params=listView.getLayoutParams();
params.height = totalHeight + listView.getPaddingBottom()
+ listView.getPaddingTop()
+ (listView.getDividerHeight() * (listAdapter.getCount() - 1));//item分隔符占有的高度
listView.setLayoutParams(params);
}
//自定义控件
@Override
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
// TODO Auto-generated method stub
int expandSpec = MeasureSpec.makeMeasureSpec(Integer.MAX_VALUE >> 2,
MeasureSpec.AT_MOST);
super.onMeasure(widthMeasureSpec, expandSpec); //但是没有每个item分隔符占有的高度
}
//三:直接设置高度
1.在ScrollView中添加一属性 android:fillViewport="true" ,这样就可以让ListView 最大屏幕显示了
2.指定ListView的高度 android:layout_height="420dp" ;
三:EditText、TextView操作属性大全
android:inputType="textMultiLine"//可以显示多行
android:gravity="left|top"//输入时光标左上角
android:minLines="6" //最小显示6行
android:layout_gravity="center_vertical"//设置控件显示的位置:默认top,这里居中显示,还有bottom
android:hint="请输入数字!"//设置显示在空间上的提示信息
android:numeric="integer"//设置只能输入整数,如果是小数则是:decimal
android:singleLine="true"//设置单行输入,一旦设置为true,则文字不会自动换行。
android:gray="top" //多行中指针在第一行第一位置
et.setSelection(et.length());//调整光标到最后一行
Android:autoText //自动拼写帮助
Android:capitalize //首字母大写
Android:digits //设置只接受某些数字
Android:singleLine //是否单行或者多行,回车是离开文本框还是文本框增加新行
Android:numeric //只接受数字
Android:password //密码
Android:phoneNumber // 输入电话号码
Android:editable //是否可编辑
Android:autoLink=”all” //设置文本超链接样式当点击网址时,跳向该网址
android:password="true"//设置只能输入密码
android:textColor = "#ff8c00"//字体颜色
android:textStyle="bold"//字体,bold, italic, bolditalic
android:textSize="20dip"//大小
android:capitalize = "characters"//以大写字母写
android:textAlign="center"//EditText没有这个属性,但TextView有
android:textColorHighlight="#cccccc"//被选中文字的底色,默认为蓝色
android:textColorHint="#ffff00"//设置提示信息文字的颜色,默认为灰色
android:textScaleX="1.5"//控制字与字之间的间距
android:typeface="monospace"//字型,normal, sans, serif, monospace
android:background="@null"//空间背景,这里没有,指透明
android:layout_weight="1"//权重 在控制控 件显示的大小时蛮有用的。
android:textAppearance="?android:attr/textAppearanceLargeInverse"//文字外观,这里引用的是系统自带的一个外观,表示系统是否有这种外观,否则使用默认的外观。不知道这样理解对不对
editText.setInputType(InputType.TYPE_CLASS_NUMBER); //输入类型
editText.setFilters(new InputFilter[]{new InputFilter.LengthFilter(6)}); //最大输入长度
editText.setTransformationMethod(PasswordTransformationMethod.getInstance()); //设置为密码输入框
属性名称描述
android:autoLink设置是否当文本为URL链接/email/下面号码/map时,文本显示为可点击的链接。可选值(none/web/email/phone/map/all)
android:autoText如果设置,将自动执行输入值的拼写纠正。此处无效果,在显示输入法并输入的时候起作用。
android:bufferType指定getText()方式取得的文本类别。选项editable 类似于StringBuilder可追加字符,
也就是说getText后可调用append方法设置文本内容。spannable 则可在给定的字符区域使用样式,参见这里1、这里2。
android:capitalize设置英文字母大写类型。此处无效果,需要弹出输入法才能看得到,参见EditView此属性说明。
android:digits设置允许输入哪些字符。如“1234567890.+-*/% ()”
android:drawableBottom在text的下方输出一个drawable,如图片。如果指定一个颜色的话会把text的背景设为该颜色,并且同时和background使用时覆盖后者。
android:drawableLeft在text的左边输出一个drawable,如图片。
android:drawablePadding设置text与drawable(图片)的间隔,与drawableLeft、drawableRight、drawableTop、drawableBottom一起使用,可设置为负数,单独使用没有效果。
/********光标*************************/
android:textCursorDrawable="@color/title_bac" 颜色
Editable ea = editText.getText();
editText.setSelection(ea.length()) 移到最后
android:cursorVisible 显示/隐。