Мне сложно заставить два текстовых представления располагаться друг над другом в моем java-коде. Вот код, с которым я экспериментирую:
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
layout = new RelativeLayout(this);
text1 = new TextView(this);
text1.setText("1");
text2 = new TextView(this);
text2.setText("2");
RelativeLayout.LayoutParams p = new RelativeLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT,
ViewGroup.LayoutParams.WRAP_CONTENT);
RelativeLayout.LayoutParams q = new RelativeLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT,
ViewGroup.LayoutParams.WRAP_CONTENT);
q.addRule(RelativeLayout.BELOW, layout.getId());
text1.setLayoutParams(q);
layout.addView(text1);
p.addRule(RelativeLayout.BELOW,text1.getId());
text2.setLayoutParams(p);
layout.addView(text2);
setContentView(layout);
}
Он складывает два текстовых представления в одну строку, но я хочу, чтобы TextView text2 отображался под TextView text1, поэтому в моем приложении я хочу, чтобы на выходе отображалось следующее:
1
2
Я перепробовал все виды вещей с методом "addRule", я не уверен, почему это не работает. Я хочу знать, как это сделать без XML, потому что я планирую создать библиотеку методов, которые могут создать макет, который легко настраивается путем редактирования массива.