2013-05-22 5 views
4

너비를 채우기 위해 LinearLayout 내부의 뷰를 가져 오려고합니다. 나는의 LayoutParams를 사용하여 설정했지만, 그것은 나에게 오류 준 :프로그래밍 방식으로 뷰 가중치 설정

내 코드 :

EditText et = new EditText(v.getContext()); 
        et.setHint("asset "); 
        et.setTextSize(12); 
        et.setLayoutParams(new LayoutParams(
          LayoutParams.WRAP_CONTENT, 
          LayoutParams.WRAP_CONTENT, 0.25f)); 
        et.setPadding(0, 15, 0, 10); 

오류가 :

The constructor ActionBar.LayoutParams(int, int, float) is undefined 

답변

6

그냥 오류가 말씀을, 어떤 ActionBarLayoutParams 생성자가 필요하지를 흙손. 중력을 위해 available graivty constants 중 하나가 필요합니다.

그러나 잘못된 것으로 가져 오는 것 같습니다. LayoutParams. 이 후 LinearLayout하지 ActionBar위한 경우에 당신은 LinearLayout.LayoutParams를 사용하는 LinearLayout.LayoutParams

import android.widget.LinearLayout.LayoutParams 

ActionBar.LayoutParams

LinearLayout.LayoutParams

5

변화를 가져 오기를 수입 할 필요가 없습니다 ActionBar.LayoutParams

또는 변경 코드

et.setLayoutParams(new LayoutParams(
    LayoutParams.WRAP_CONTENT, 
    LayoutParams.WRAP_CONTENT, 0.25f)); 

et.setLayoutParams(new LinearLayout.LayoutParams(
    LinearLayout.LayoutParams.WRAP_CONTENT, 
    LinearLayout.LayoutParams.WRAP_CONTENT, 0.25f)); 
1

당신이 LinearLayout을 사용하고 있기 때문에, 나는 당신이 LinearLayout.LayoutParams를 호출해야합니다 같아요.