Макет
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/TableLayout1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_margin="20dp"
android:gravity="center_horizontal" >
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Contact Application"
android:textAppearance="?android:attr/textAppearanceLarge"
android:gravity="center_horizontal"/>
код
//container Layout
TableLayout tbl=(TableLayout)findViewById(R.id.TableLayout1);
//table row
TableRow tr = new TableRow(this);
TableLayout.LayoutParams tableRowParams=
new TableLayout.LayoutParams
(TableLayout.LayoutParams.FILL_PARENT,TableLayout.LayoutParams.WRAP_CONTENT);
//for set margin
tableRowParams.setMargins(0, 10, 0, 0);
tr.setLayoutParams(tableRowParams);
//text view
TextView tv=new TextView(this);
tv.setText("Email");
tv.setGravity(Gravity.CENTER);
tv.setTextColor(Color.parseColor("#0070C0"));
tv.setTextSize(26);
tv.setLayoutParams(new TableRow.LayoutParams(100, TableRow.LayoutParams.WRAP_CONTENT));
//add textview
tr.addView(tv);
//set layout params of edittext
TableRow.LayoutParams etParams=
new TableRow.LayoutParams
(120,30);
etParams.setMargins(10, 0, 0, 0);
EditText et=new EditText(this);
et.setLayoutParams(etParams);
//set background
et.setBackgroundResource(R.drawable.bg_grey);
et.setInputType(InputType.TYPE_TEXT_VARIATION_EMAIL_ADDRESS);
tr.addView(et);
tbl.addView(tr, tableRowParams);
Может быть, вы можете попытаться восстановить свое рабочее пространство. Я не могу увидеть проблему с вышеупомянутым кодом.
У вас есть опечатка в добытчике. Ваши if
условия фактически устанавливают значение поля экземпляра, вместо проверки его:
if (this.hasDriverLicence = true)
Это должно быть:
if (this.hasDriverLicence == true)
Или лучше просто:
[ 112]Поэтому переменная присваивается, но никогда не используется в вашем коде.
Разработка
Причина, по которой сингл =
компилируется, но IDE выдает предупреждение о том, что переменная никогда не используется, заключается в том, что присвоение Оператор возвращает присвоенное значение .
Например, оператор:
myVariable = 1
... возвращает 1
.
Поэтому, когда вы неправильно проверяете назначение (=
), а не примитивное равенство (==
), вы всегда будете проверять значение вашего назначения (в вашем true
в первом условии, которое всегда будет выполняться, false
во втором, что, следовательно, никогда не будет выполняться).