2017-12-05 8 views
0

線形レイアウトをプログラムで作成し、レイアウトパラメータで幅と高さを設定しようとしています。しかし、それはレイアウトのパラメータが動作していないようです。LayoutParamsを設定しても動作しないandroid

これはコードです:

// CREATING A NEW LINEAR LAYOUT PROGRAMMATICALLY 
    LinearLayout linearLayout = new LinearLayout(getActivity()); 
    ViewGroup.LayoutParams layoutParams = new 
ViewGroup.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, 
ViewGroup.LayoutParams.WRAP_CONTENT); 
    linearLayout.setLayoutParams(layoutParams); 
    linearLayout.setOrientation(LinearLayout.HORIZONTAL); 

    // CREATING CHILDDRENS (TEXT VIEWS) 
    TextView name = new TextView(getContext(), null, 0, R.style.item_layout_style); 
    name.setText("Pine"); 
    TextView qty = new TextView(getContext(), null, 0, R.style.item_layout_style); 
    qty.setText("10"); 
    TextView cost = new TextView(getContext(), null, 0, R.style.item_layout_style); 
    cost.setText("785"); 
    TextView tCost = new TextView(getContext(), null, 0, R.style.item_layout_style); 
    tCost.setText("1000"); 



    // SET TEXT VIEW TO LINEAR LAYOUT 
    linearLayout.addView(name); 
    linearLayout.addView(qty); 
    linearLayout.addView(cost); 
    linearLayout.addView(tCost); 

    // SET LINEAR LAYOUT TO PINE LAYOUT 
    LinearLayout daddy= (LinearLayout) view.findViewById(R.id.layout); 
    daddy.addView(linearLayout, 2); 

    // Return the view 
    return view; 

私は多くの線形レイアウトを(垂直方向に配向)は、ルートレイアウト(パパ)を持っているが、私はプログラム的に直線的なレイアウトを作成して、「パパ」にそれを追加する必要があります。しかし、テキストビューは一緒にくっつけられ、スペース全体が水平にならない。

私を助けてください!

+0

例を追加してください – motis10

+0

例私のコードが正しいかどうか少なくとも教えてください。そして私は別のものを見なければならない。 –

答えて

0

コードはすべて問題ありません。私がテキストビューに与えることを試みたスタイルで、レイアウトの重み、幅、高さが得られていませんでした。私はこれをどのように見つけましたかよくレイアウトされたレイアウトの背景色を黒に設定して、LayoutParamsによって設定された幅と高さが実際には得られないかどうかを確認します。私は間違っていませんでした!幅は親と一致するように設定されています。だから、私がしたことは、テキストビューの新しいレイアウトパラメータを作成して、それをemに設定することでした。

関連する問題