<分区>
我正在尝试从 Java 动态构建 View ,但我很困惑为什么这不起作用。
TextView displayText
根本不显示在屏幕上。我不明白为什么它不会像上面那样用户输入他们的名字。
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
RelativeLayout ceriLayout = new RelativeLayout(this);
Button genButton = new Button(this);
genButton.setText("Press here");
genButton.setId(0);
TextView displayView = new TextView(this);
displayView.setText("What is going to go here huh");
displayView.setId(1);
EditText nameView = new EditText(this);
nameView.setText("Enter your name");
nameView.setId(2);
RelativeLayout.LayoutParams button = new RelativeLayout.LayoutParams(
RelativeLayout.LayoutParams.WRAP_CONTENT,
RelativeLayout.LayoutParams.WRAP_CONTENT
);
RelativeLayout.LayoutParams name = new RelativeLayout.LayoutParams(
RelativeLayout.LayoutParams.WRAP_CONTENT,
RelativeLayout.LayoutParams.WRAP_CONTENT
);
RelativeLayout.LayoutParams display;
display = new RelativeLayout.LayoutParams(
RelativeLayout.LayoutParams.WRAP_CONTENT,
RelativeLayout.LayoutParams.WRAP_CONTENT
);
button.addRule(RelativeLayout.CENTER_HORIZONTAL);
button.addRule(RelativeLayout.CENTER_VERTICAL);
display.addRule(RelativeLayout.CENTER_HORIZONTAL);
display.addRule(RelativeLayout.ABOVE, nameView.getId());
name.addRule(RelativeLayout.CENTER_HORIZONTAL);
name.addRule(RelativeLayout.ABOVE, genButton.getId());
ceriLayout.addView(genButton, button);
ceriLayout.addView(nameView,name);
setContentView(ceriLayout);
}
}