Java 如何在android中对齐Linearlayout中的垂直文本视图和编辑文本

Java 如何在android中对齐Linearlayout中的垂直文本视图和编辑文本,java,android,android-layout,runtime,Java,Android,Android Layout,Runtime,目前,我正试图在android studio中使用Linearlayout对textview和edittext进行编码,使其垂直对齐。我试图设置布局重力和其他元素,但我无法实现我想要的,目前这是我的代码 LinearLayout params3 = new LinearLayout(this); params3.setOrientation(LinearLayout.VERTICAL); params3.setGravity(Gravity.CENTER_VERT

目前,我正试图在android studio中使用Linearlayout对textview和edittext进行编码,使其垂直对齐。我试图设置布局重力和其他元素,但我无法实现我想要的,目前这是我的代码

LinearLayout params3 = new LinearLayout(this);
        params3.setOrientation(LinearLayout.VERTICAL);
        params3.setGravity(Gravity.CENTER_VERTICAL);

        LinearLayout.LayoutParams params2 = new LinearLayout.LayoutParams(
                LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT);
        params2.weight = 35;
        params3.setLayoutParams(params2);
        params2.height = convertDiptoPix(80,context);
        //params2.leftMargin = convertDiptoPix(5,context);


        TextView textView1 = new TextView(this);
        textView1.setId(View.generateViewId());
        textView1.setGravity(Gravity.TOP | Gravity.CENTER_HORIZONTAL);
        textView1.setPadding(0,convertDiptoPix(1,context),0,convertDiptoPix(3,context));
        textView1.setText("Receipt");
        textView1.setTextColor(Color.parseColor("#000000"));
        //textView1.setLayoutParams(params2);
        textView1.setTextSize(convertDiptoPix(13,context));

        EditTextIME editTextIME = new EditTextIME(this);
        editTextIME.setId(View.generateViewId());
        //editTextIME.setWidth(LinearLayout.LayoutParams.MATCH_PARENT);
        //editTextIME.setMinimumHeight(LinearLayout.LayoutParams.WRAP_CONTENT);
        editTextIME.setGravity(Gravity.BOTTOM | Gravity.CENTER_VERTICAL);
        //editTextIME.setLayoutParams(params2);
        editTextIME.setFocusableInTouchMode(true);
        editTextIME.setKeyListener(DigitsKeyListener.getInstance("abcdefghijklmnopqrstuvwxyzöäüßñéúíóáèùòìàâãåæçëêìíîïôõûýABCDEFGHIJKLMNOPQRSTUVWXYZÖÄÜÕÔÒÔÓÙÚÛÝÑÇÈÉÊËÌÍÎÏÆÅÄÃÂÁÀØ01234567890()&*$%#!+-:;,._?¿/><[]{}|\\^ "));
        editTextIME.setHint("Notes");
        editTextIME.setInputType(InputType.TYPE_CLASS_TEXT);
        editTextIME.setHorizontallyScrolling(true);
        editTextIME.setTextSize(convertDiptoPix(13,context));
有人在android studio中尝试过像垂直对齐这样的代码吗?你能分享你的想法吗?

你可以试试这个

        LinearLayout parent = new LinearLayout(context);

        parent.setLayoutParams(new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT, LinearLayout.LayoutParams.MATCH_PARENT));
        parent.setOrientation(LinearLayout.VERTICAL);

        LinearLayout.LayoutParams params2 = new LinearLayout.LayoutParams(
                LinearLayout.LayoutParams.MATCH_PARENT, LinearLayout.LayoutParams.WRAP_CONTENT);

        TextView textView1 = new TextView(this);
        textView1.setLayoutParams(params2);
        textView1.setId(View.generateViewId());
        textView1.setGravity(Gravity.TOP | Gravity.CENTER_HORIZONTAL);
        textView1.setText("Receipt");
        textView1.setTextColor(Color.parseColor("#000000"));

        EditText editTextIME = new EditText(this);
        editTextIME.setId(View.generateViewId());
        editTextIME.setGravity(Gravity.BOTTOM | Gravity.CENTER_VERTICAL);
        editTextIME.setLayoutParams(params2);
        editTextIME.setFocusableInTouchMode(true);
        editTextIME.setKeyListener(DigitsKeyListener.getInstance("abcdefghijklmnopqrstuvwxyzöäüßñéúíóáèùòìàâãåæçëêìíîïôõûýABCDEFGHIJKLMNOPQRSTUVWXYZÖÄÜÕÔÒÔÓÙÚÛÝÑÇÈÉÊËÌÍÎÏÆÅÄÃÂÁÀØ01234567890()&*$%#!+-:;,._?¿/><[]{}|\\^ "));
        editTextIME.setHint("Notes");
        editTextIME.setInputType(InputType.TYPE_CLASS_TEXT);
        editTextIME.setHorizontallyScrolling(true);
//        editTextIME.setTextSize(convertDiptoPix(13,context));

        parent.addView(textView1);
        parent.addView(editTextIME);

请问params2.weight=35;的用途是什么;。。?用xml书写有什么问题吗?它们目前是如何对齐的?我没有看到您将文本视图和编辑文本视图添加到线性布局中。