永发信息网

android 动态生成控件,怎么设置控件的大小

答案:2  悬赏:50  手机版
解决时间 2021-02-02 12:27
android 动态生成控件,怎么设置控件的大小
最佳答案
首先,你这个button被包含在哪个父控件中,假定为LinearLayout,变量是mLinear
其次,30dip在代码中要换成像素。

结果:

Button button = new Button(this);
int px = (int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP,
30, getResources().getDisplayMetrics());
button.setLayoutParams(new LinearLayout.LayoutParams(
LayoutParams.WRAP_CONTENT, px));
// 如果父窗口是FrameLayout就写FrameLayout.LayoutParams
mLinear.addView(button);
全部回答
一、方法 使用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一般是在加入容器中设置的,所以容易混淆所指定的布局属性究竟是保存在容器中,还是控件本身的属性,答案是控件本身。但是在设置时还是要注意布局属性与容器种类密切相关。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
喷油嘴有点堵了会不会费油
鑫宝汽车维修中心我想知道这个在什么地方
玉柴机器朝阳专卖店在哪里啊,我有事要去这个
果冻料是什么意思
停车场(世纪大道)(沙城路23号附近停车场)地址
出口到韩国的电动车需要什么认证
锦星瓷砖建材怎么去啊,我要去那办事
【They're new students here.Please look】
青得里镇怎么去啊,有知道地址的么
请问宪法共分为几章?
在日本读研(硕博)是怎样一种体验
【圆明】圆明园中的圆明的含义不许胡说
2015年五莲县街头镇的石材做的怎么样
小地锅饭店怎么去啊,有知道地址的么
物质交换效率
推荐资讯
谈谈我国人口环境对企业营销活动的影响
语文的煲义词贬义词是什么意思?
658饺子馆魏都店怎么去啊,有知道地址的么
右图表示将某植物放在不同浓度CO2环境条件下
听过“一朝别蛇咬,十年怕草绳”吗?结合“杯
红米2电池放到小米2a不能充电?
北京工商大学阜成路校区西区东门地址在哪,我
家乐福超市琚湾店这个地址在什么地方,我要处
银鼎商务酒店在什么地方啊,我要过去处理事情
科隆电脑行怎么去啊,有知道地址的么
内分泌腺可作为反射弧上的效应器,神经元也可
细菌、真菌对人类都有益,病毒对人类都有害B
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?