コードにmarginを設定する

2673 ワード

public class MarginActivity extends Activity {
    private TextView tv;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.margin);
        tv = ((TextView) findViewById(R.id.tv));

//        alertMaginLeft1();

        alertMaginLeft2();


    }

    /**
     * 1    view getLayoutParams
     * 2     
     * 3     
     * 4 setLayoutParams
     */
    private void alertMaginLeft2() {
        //   textview    
        LinearLayout.LayoutParams tv_params = (LinearLayout.LayoutParams) tv.getLayoutParams();
        //  textview leftMargin
        int leftMargin = tv_params.leftMargin;
        Log.d("shj--", "leftMargin " + leftMargin);

        //  textview leftmargin
        tv_params.leftMargin = 50;
        tv.setLayoutParams(tv_params);

        int leftMargin2 = tv_params.leftMargin;

        Log.d("shj--", "leftMargin2 " + leftMargin2);
    }

    /**
     * 1   LayoutParams  ,       view    
     * 2  LayoutParams    
     * 4   view    
     */
    private void alertMaginLeft1() {
//             TextView    ,    w,h      ??
        RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT);
        params.setMargins(50, 0, 0, 0);
        tv.setLayoutParams(params);
    }
}