2015-08-03 97 views
1

我有一个片段,在其onCreate方法中,我添加了一个FrameLayout。对此FrameLayout,我添加了一个从View延伸出来的类的对象。以编程方式设置宽度/视图高度

现在我想将此视图对象的宽度和高度设置为wrap_content

这是我的代码和我已经试过:

@Override 
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { 
    super.onCreateView(inflater, container, savedInstanceState); 
    View view = inflater.inflate(R.layout.fragmentTest, container, false); 

    FrameLayout frameLayout = (FrameLayout) view.findViewById(R.id.drawingImg); 

    DrawingImg drawingImgView = new DrawingImg(); 
    drawingImgView.getLayoutParams().height = ViewGroup.LayoutParams.WRAP_CONTENT; 
    drawingImgView.getLayoutParams().width = ViewGroup.LayoutParams.WRAP_CONTENT; 

    // adding the view to the framelayout with the drawn picture 
    frameLayout.addView(drawingImgView); 

    return view; 
} 

fragmentTest.xml:

<?xml version="1.0" encoding="utf-8"?> 
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/drawingImg" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content"> 

</FrameLayout> 

的DrawingImg类从视图延伸,并绘制用帆布图像

public class DrawingImg extends View { 

.... 

} 

我的目标是框架布局占据LY宽度和高度需要

回答

0

试试这个:

drawingImgView.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT)); 
0

用途:

drawingImgView.setLayoutParams(new FrameLayout.LayoutParams(
      FrameLayout.LayoutParams.WRAP_CONTENT, FrameLayout.LayoutParams.WRAP_CONTENT)); 

相反的:

drawingImgView.getLayoutParams().height = ViewGroup.LayoutParams.WRAP_CONTENT; 
drawingImgView.getLayoutParams().width = ViewGroup.LayoutParams.WRAP_CONTENT; 
相关问题