① android 自定义view 的高度,宽度怎么设置
Android中View是显示控件,需要用一个layout布局来装载,layout尺寸大写的设置如下:
1. 尽量使用wrap_content、match_parent、weight 来规定layout的大小。
2. 要确保布局的灵活性并适应各种尺寸的屏幕,应使用 “wrap_content” 和 “match_parent” 控制某些视图组件的宽度和高度。
3. 使用 “wrap_content”,系统就会将视图的宽度或高度设置成所需的最小尺寸以适应视图中的内容,而 “match_parent”(在低于 API 级别 8 的级别中称为“fill_parent”)则会展开组件以匹配其父视图的尺寸。
4. 如果使用 “wrap_content” 和 “match_parent” 尺寸值而不是硬编码的尺寸,视图就会相应地仅使用自身所需的空间或展开以填满可用空间。此方法可让布局正确适应各种屏幕尺寸和屏幕方向。
5. 如果某些地方必须要规定控件的大小,那么要使用dp 或者 dip单位。
② Android中自定义DialogFragment解决宽度和高度问题
Android中自定义DialogFragment解决宽度和高度问题但是我们很多时候想把DialogFragment的高度固定,那么我们需要设置DialogFragment的高度,在Fragment的onResume()声明周期方法中设置window的宽高即可。
③ android中gridView怎么在代码里动态设置每一列的宽度
获取屏幕宽度
获取将要布局的列数
宽度/列数 =每一列的宽度
考虑每一列的左右间距,进行优化
④ Android GridView——如何以dp单位使用setColumnWidth()设置宽度
你可以用下面的代码将dp转换为px:Resources r = getResources(); float px = TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, 14, r.getDisplayMetrics()); 但是,如果列数从3变为4,反过来也一样,列的宽度不会自动调整。
⑤ android 开发的时候怎么动态设置控件宽高
1、获取控件所在的布局
java">LayoutParamspara=button.getLayoutParams();//获取按钮的布局
2、修改布局中的height,width属性
para.width=200;//修改宽度
para.height=300;//修改高度
3、重新设置修改后的布局给控件
button.setLayoutParams(para);//设置修改后的布局。
⑥ android studio如何更改 行号列的宽度,如图:
这个是因为显示 Gutter Icons 的缘故. 只要把显示 Gutter Icons 关掉即可.
在 AndroidStudio 的设置里 搜索 "gutter icon"即可.
打开"设置"的方法为: file -> settings
AndroidStudio gutter icons设置
⑦ android 动态设置布局宽度
例如设置一个图片宽高 关键代码:
//取控件当前的布局参数
LinearLayout.LayoutParams params = (LinearLayout.LayoutParams) imageView.getLayoutParams();
//设置宽度值
params.width = dip2px(MainActivity.this, width);
//设置高度值
params.height = dip2px(MainActivity.this, height);
//使设置好的布局参数应用到控件
imageView.setLayoutParams(params);
1
2
3
4
5
6
7
8
1
2
3
4
5
6
7
8
高度除了可以设置成以上固定的值,也可以设置成wrap_content或match_content
ViewGroup.LayoutParams.WRAP_CONTENT
ViewGroup.LayoutParams.MATCH_PARENT
1
2
1
2
在这里插入图片描述
xml
⑧ 怎样动态设置GridView的宽和高(Android)
以下两种方式都可以做到:
一、在xml布局文件中设置,wrap_content即表示根据gridView的内容自使用宽高,代码如下:
android:layout_width="wrap_content"
android:layout_height="wrap_content"
二、在代码中动态设置,可以在对gridview赋值之后,计算gridview的宽高,然后进行设置:
intheight=20;//此处的高度需要动态计算
intwidth=30;//此处的宽度需要动态计算
LinearLayout.LayoutParamslinearParams=newLayoutParams(width,height);
gridview.setLayoutParams(linearParams);//使设置好的布局参数应用到控件
需要注意的是:如果你的gridview是嵌套在ScrollView中,那么,你需要重写gridview控件,不然gridview只显示一行的问题(即高度不够),具体重写方式,可以参考下面代码:
/**
*@authorhnbcinfo
*自定义GridView控件,解决在ListView或ScrollView中使用GridView导致GridView显示不全的问题
*当前应用:时间轴中,图片显示
*/
{
publicGridViewForScrollView(Contextcontext,AttributeSetattrs){
super(context,attrs);
}
publicGridViewForScrollView(Contextcontext){
super(context);
}
publicGridViewForScrollView(Contextcontext,AttributeSetattrs,intdefStyle){
super(context,attrs,defStyle);
}
@Override
publicvoidonMeasure(intwidthMeasureSpec,intheightMeasureSpec){
intexpandSpec=MeasureSpec.makeMeasureSpec(
Integer.MAX_VALUE>>2,MeasureSpec.AT_MOST);
super.onMeasure(widthMeasureSpec,expandSpec);
}
}
⑨ android 如何动态设置控件的宽度和高度
一、方法
使用getLayoutParams() 和setLayoutParams()方法
二、示例代码
LinearLayout.LayoutParams linearParams = (LinearLayout.LayoutParams) aaa.getLayoutParams();
// 取控件aaa当前的布局参数
linearParams.height = 365; // 当控件的高强制设成365象素
aaa.setLayoutParams(linearParams); // 使设置好的布局参数应用到控件aaa
三、原理
a)getLayoutParams()和setLayoutParams()都是控件基类view的public方法,在外部也可以直接调用。
b)由于LayoutParams一般是在加入容器中设置的,所以容易混淆所指定的布局属性究竟是保存在容器中,还是控件本身的属性,答案是控件本身。但是在设置时还是要注意布局属性与容器种类密切相关。