当前位置: 安卓之星 -> 安卓开发 -> android如何设置控件的最大高度

android如何设置控件的最大高度

作者:网络 发表于: 2017-03-11 点击: 2,140 次

一、方法

 使用getLayoutParams() 和setLayoutParams()方法

二、示例代码

 LinearLayout.LayoutParams linearParams = (LinearLayout.LayoutParams) aaa.getLayoutParams(); // 取控件aaa当前的布局参数

linearParams.height = 365; 

应该把控件高度单位设置为dp,而不要设置成px,高度设置成dp后会根据屏幕密度大小换算成不同px值,这是google推荐屏幕自适应机制,你可以试试。

Android动态改变View控件大小的方法:

  1. 1、声明控件参数获取对象 LayoutParams lp;
  2. 2、获取控件参数: lp = 控件id.getLayoutParams();
  3. 3、设置控件参数:如高度。 lp.height -= 10;
  4. 4:、使设置生效:控件id.setLayoutParams(lp)

我也遇到同样问题,经验证 发现把RelativeLayout 改为 LinearLayout可以解决 其他解决方式尚未发现一般View像你说的那样便得了,如果那样不行的话可能Scrollview比较特殊一点,我一般都是让ScrollView wrap_content ,然后ScrollView里的布局不要wrap_content,比如里面嵌套一个RelaytiveLayout,这个RelaytiveLayout的高度写死。你代码中设置。

//在代码中设置控件大小的方法

private Button mbtn; mbtn = (Button) findViewById(R.id.btn_test);

LayoutParams lp; lp=mbtn.getLayoutParams();

lp.width=100; lp.height=200; mbtn.setLayoutParams(lp);

获取控件所在的布局

LayoutParams para = button.getLayoutParams();//获取按钮的布局2、修改布局中的height,width属性 para.width=200;//修改宽度

para.height=300;//修改高度3、重新设置修改后的布局给控件 button.setLayoutParams(para); …

LinearLayout.LayoutParams params=new LinearLayout.LayoutParams(LayoutParams.MATCH_PARENT,LayoutParams.MATCH_PARENT); view.setLayoutParams(params);
这个就可以解决你问题
首先布局要用线性布局,然后设置控件的android:layout_weight属性,比如你有两个控件,一个设置1一个设置2,即为1比2。

相关文章

相关文章

赶快留言冒泡

  • 评论 (0)
  • 引用通告 (0)
目前还没有任何评论.
目前还没有任何Trackbacks和Pingbacks.
吐个泡浮上去.