На моем основном экране отображается информация с пользовательского ввода.Программно добавление TextView в существующий файл XML
Теперь все на этом экране добавляется с помощью XML, кроме TextView «Kool» в верхнем левом углу. Теперь я хочу, чтобы получить информацию от пользователя и добавить ее под первой строкой информации.
Я разобрал экран, который вводит пользователя, проблема заключается в том, что проблема заключается в том, чтобы сделать макет идеальным. Теперь я добавил «Kool» TextView программно, но макет неправильный.
Как я могу сделать это так, чтобы текстовый текст «Kool» находился под датой «20/08/15». Каждый раз, когда я использую метод setHeight, он делает невидимым TextView.
Код:
public class AnalysisPage extends Activity {
Button savebutton,cancelbutton;
EditText dateinput,weightinput,repsinput;
int dd,mm,yy;
private TextView texty = null;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.dumbbellpress);
}
@Override
public boolean onCreateOptionsMenu(Menu menu){
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.main_activity_actions,menu);
return super.onCreateOptionsMenu(menu);
}
@Override
public boolean onOptionsItemSelected(MenuItem item){
switch (item.getItemId()){
case R.id.addinfo:
Dialog dialog = new Dialog(AnalysisPage.this);
dialog.setTitle(" Enter your STATS brah");
dialog.setContentView(R.layout.datainput);
dateinput = (EditText)dialog.findViewById(R.id.editDate);
final Calendar c = Calendar.getInstance();
dd = c.get(Calendar.DAY_OF_MONTH);
mm = c.get(Calendar.MONTH);
yy = c.get(Calendar.YEAR);
dateinput.setText(new StringBuilder().append(dd).append("/").append(mm+1).append("/").append(yy));
dialog.show();
weightinput = (EditText)dialog.findViewById(R.id.editWeight);
repsinput = (EditText)dialog.findViewById(R.id.editReps);
savebutton = (Button)dialog.findViewById(R.id.btnSave);
cancelbutton = (Button)dialog.findViewById(R.id.btnCancel);
savebutton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
RelativeLayout views = (RelativeLayout)findViewById(R.id.xxx);
texty = new TextView(AnalysisPage.this);
texty.setTextSize(28);
texty.setText("Kool");
views.addView(texty);
}
});
cancelbutton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
dialog.cancel();
}
});
return true;
default:
return super.onOptionsItemSelected(item);
}
}
код XML:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent" android:weightSum="1" android:id="@+id/statslayout">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent" android:id="@+id/xxx">
<TableRow
android:layout_width="fill_parent"
android:layout_height="100dp" android:id="@+id/tableRow3" android:layout_alignParentTop="true"
android:layout_alignParentStart="true" android:layout_marginStart="72dp">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceLarge"
android:text="Dumbbell Press Stats!"
android:id="@+id/textView"/>
</TableRow>
<TableRow
android:layout_width="fill_parent"
android:layout_height="100dp" android:id="@+id/tableRow"
android:layout_alignParentTop="true" android:layout_alignEnd="@+id/tableRow3"
android:layout_marginTop="49dp" android:layout_alignBottom="@+id/tableRow3">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceMedium"
android:text="Date"
android:layout_weight="0.22"
android:id="@+id/btnDate"
/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceMedium"
android:text=" Weight"
android:layout_weight="0.22"
android:id="@+id/txtWeight"
/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceMedium"
android:text=" Reps"
android:layout_weight="0.22"
android:id="@+id/btnReps"
/>
</TableRow>
<TableRow
android:layout_width="wrap_content"
android:layout_height="200dp"
android:layout_below="@+id/tableRow" android:layout_alignParentStart="true" android:id="@+id/tableRow4">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceMedium"
android:text="20/08/15"
android:id="@+id/textView2" android:layout_below="@+id/tableRow"
android:layout_alignStart="@+id/tableRow3"/>
</TableRow>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceMedium"
android:text=" 8"
android:id="@+id/textView7"
android:layout_marginEnd="82dp" android:layout_below="@+id/tableRow"
android:layout_alignEnd="@+id/tableRow3"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceMedium"
android:text="50kg"
android:id="@+id/textView6"
android:layout_marginStart="43dp"
android:layout_below="@+id/tableRow3" android:layout_toEndOf="@+id/tableRow4"/>
</RelativeLayout>
Мой конец (мечта) цель это с помощью Java я сделать полные идеально отформатированные строки, которые содержат дату, Вес и Reps в их уважаемых колонках. И несколько строк этого или отлично отформатированы с использованием Java.
Image (это в XML не в Java)
Хорошо, спасибо, я просмотрел документацию. Не могли бы вы просто предоставить немного стартового кода? Просто он отображает секцию заголовка (Date, Weight, Reps). – bob9123