Java AddView错误,只显示第一个元素

Java AddView错误,只显示第一个元素,java,android,view,add,Java,Android,View,Add,假设我有一个LinearLayout,我想给它添加两个视图。第一个包含editText,另一个包含listview。我已经尝试了以下java代码: EditText inputViaText; ListView historyInput; protected static LinearLayout askTextLayout = null; askTextLayout = new LinearLayout(this); askTextLayout.set

假设我有一个LinearLayout,我想给它添加两个视图。第一个包含editText,另一个包含listview。我已经尝试了以下java代码:

    EditText inputViaText;
    ListView historyInput;
    protected static LinearLayout askTextLayout = null;

    askTextLayout = new LinearLayout(this);
    askTextLayout.setVisibility(LinearLayout.VISIBLE);
    askTextLayout.setOrientation(LinearLayout.HORIZONTAL);

    inputViaText =  new EditText(this);
    LinearLayout.LayoutParams askTextParams = new LinearLayout.LayoutParams(LayoutParams.FILL_PARENT,LayoutParams.WRAP_CONTENT);

    historyInput = new ListView(this);
    LinearLayout.LayoutParams historyInputParams = new LinearLayout.LayoutParams(LayoutParams.WRAP_CONTENT,70);

    askTextLayout.addView(historyInput,historyInputParams);
    askTextLayout.addView(inputViaText,askTextParams);

    FrameLayout.LayoutParams frameAskTextParams = new FrameLayout.LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT, Gravity.BOTTOM);
    setContentView(R.layout.activity_main);
    addContentView(askTextLayout, frameAskTextParams);  
但是,它只是显示了我添加的第一个。因此,当我编写如下代码时:

     askTextLayout.addView(historyInput,historyInputParams);
     askTextLayout.addView(inputViaText,askTextParams);
     askTextLayout.addView(inputViaText,askTextParams);
     askTextLayout.addView(historyInput,historyInputParams);
它只是显示listView。当我编写如下代码时:

     askTextLayout.addView(historyInput,historyInputParams);
     askTextLayout.addView(inputViaText,askTextParams);
     askTextLayout.addView(inputViaText,askTextParams);
     askTextLayout.addView(historyInput,historyInputParams);

它只显示编辑文本。有人可以帮我吗?

在活动的oncreate方法中尝试此代码

context = this;

        setContentView(R.layout.activity_main);
        container = (LinearLayout) findViewById(R.id.Linear);
        LinearLayout linearLayout = new LinearLayout(context);
        linearLayout.setWeightSum(100);
        ListView v1 = new ListView(context);
        v1.setBackgroundColor(Color.CYAN);
        LinearLayout.LayoutParams p1 = new LinearLayout.LayoutParams(0,
                50);
        p1.weight = 90;
        v1.setLayoutParams(p1);
        EditText v2 = new EditText(context);
        v2.setText("Hello");
        v2.setBackgroundColor(Color.WHITE);
        LinearLayout.LayoutParams p2 = new LinearLayout.LayoutParams(0,
                50);
        p2.weight = 10;
        v2.setLayoutParams(p2);
        linearLayout.addView(v1, p1);
        linearLayout.addView(v2, p2);
        View view = new View(MainActivity.this);

        LayoutParams lp = new LayoutParams(LayoutParams.MATCH_PARENT,
                1);
        view.setLayoutParams(lp);
        view.setBackgroundColor(Color.BLACK);
        container.addView(linearLayout);
        container.addView(view);


Write this in activity_main:

<LinearLayout
        android:id="@+id/Linear"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" >
    </LinearLayout>
context=this;
setContentView(R.layout.activity_main);
容器=(线性布局)findViewById(R.id.Linear);
LinearLayout LinearLayout=新的LinearLayout(上下文);
线性布局。设置权重总和(100);
ListView v1=新的ListView(上下文);
v1.setBackgroundColor(颜色为青色);
LinearLayout.LayoutParams p1=新的LinearLayout.LayoutParams(0,
50);
p1.重量=90;
v1.设置布局参数(p1);
EditText v2=新的EditText(上下文);
v2.setText(“你好”);
v2.setBackgroundColor(颜色为白色);
LinearLayout.LayoutParams p2=新的LinearLayout.LayoutParams(0,
50);
p2.重量=10;
v2.设置布局参数(p2);
linearLayout.addView(v1,p1);
线性布局。添加视图(v2,p2);
视图=新视图(MainActivity.this);
LayoutParams lp=新的LayoutParams(LayoutParams.MATCH_父项,
1);
view.setLayoutParams(lp);
视图.setBackgroundColor(颜色.黑色);
container.addView(linearLayout);
container.addView(视图);
在活动_main中写入以下内容:

此线性id来自何处?“容器=(LinearLayout)findViewById(R.id.Linear);”