如何在ScrollView(Android Studio)中使用LinearLayout.LayoutParams调整权重

时间:2016-03-10 17:29:28

标签: android

我一直在关注[this]回答,试图纠正滚动视图中某些图像按钮的高度,因为我无法使用线性布局权重。这是我提出的代码:

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_plant_list);
    final ImageButton buttonPlant1= (ImageView) findViewById(R.id.buttonPlant1);
    final ScrollView scrollViewPlant = (ScrollView) findViewById(R.id.scrollViewPlant);
    scrollViewPlant.post(new Runnable() {
        @Override
        public void run() {
            int scrollPlantHeight = scrollViewPlant.getHeight();
            LinearLayout.LayoutParams layoutParams  = new    
                 LinearLayout.LayoutParams(LayoutParams.MATCH_PARENT, scrollPlantHeight / 3.69);
            buttonPlant1.setLayoutParams(layoutParams);
        }
    });
}

我在代码中不断收到警告,告诉我需要在“LayoutParams.MATCH_PARENT”之前导入一个类。

当我导入一个类(我甚至不确定要导入哪一个,但我所尝试的都是LinearLayout.LayoutParams)时,我得到另一个警告告诉我它“无法解析构造函数”LayoutParams(int,double )'“在LayoutParams.MATCH_PARENT。

我应该导入哪个类?如果有的话?或者还有其他我想念的东西?

1 个答案:

答案 0 :(得分:0)

LayoutParams类没有带(int,double)的构造函数 尝试将第二个参数转换为整数

LinearLayout.LayoutParams layoutParams  = new    
                 LinearLayout.LayoutParams(LayoutParams.MATCH_PARENT, (int)(scrollPlantHeight / 3.69));