Мне трудно решить эту проблему, которая, вероятно, является основной для других. Я не могу найти, где я ошибся. Я пытаюсь получить всю информацию о выбранном имени учреждения и установить его на editText, когда он имеет соответствующее значение. Мне удалось получить все данные (я записываю его на logcat, чтобы проверить, действительно ли он имеет значение), но он не отображается в редакторе текста до момента, когда я нажимаю на него. Я попытался сделать недействительным и даже запросить фокус на editText, но не работает. Я действительно не могу понять это. Я прикрепил изображение своего экрана и разместил xml для этого макета. Спасибо заранее тем, кто мне поможет. EditText в Android не отображал его значение до тех пор, пока оно не сфокусировалось
<RelativeLayout
android:id="@+id/layout_complete_address"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/rel_ca">
<TableLayout
android:id="@+id/tbl_2"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<TableRow
android:id="@+id/tbl2_row1"
android:layout_width="fill_parent"
android:layout_height="wrap_content" >
<TextView
android:id="@+id/lbl_bldg_name"
android:layout_width="210dp"
android:layout_height="wrap_content"
android:layout_gravity="right|center_vertical"
android:text="@string/lbl_bldgname"
android:textColor="@color/black"
android:textSize="18sp" />
<EditText
android:id="@+id/txt_bldg_name"
android:layout_width="485dp"
android:layout_height="40dp"
android:layout_marginLeft="10dp"
android:background="@drawable/img_edittext_bg"
android:imeOptions="actionNext"
android:inputType="textCapWords"
android:nextFocusDown="@+id/txt_bldg_no"
android:padding="3dp"
android:textSize="18sp"
android:singleLine="true"/>
<TextView
android:id="@+id/lbl_bldg_no"
android:layout_width="140dp"
android:layout_height="wrap_content"
android:layout_gravity="right|center_vertical"
android:text="@string/lbl_bldgno"
android:textColor="@color/black"
android:textSize="18sp" />
<EditText
android:id="@+id/txt_bldg_no"
android:layout_width="340dp"
android:layout_height="40dp"
android:layout_marginLeft="10dp"
android:background="@drawable/img_edittext_bg"
android:imeOptions="actionNext"
android:inputType="textCapWords"
android:nextFocusDown="@+id/txt_street_name"
android:padding="3dp"
android:textSize="18sp"
android:singleLine="true"/>
</TableRow>
<TableRow
android:id="@+id/tbl2_row2"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginTop="5dp" >
<LinearLayout
android:id="@+id/linear_name1"
android:layout_width="215dp"
android:layout_height="wrap_content"
android:layout_gravity="right|center_vertical"
android:orientation="horizontal" >
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="*"
android:textColor="@color/red"
android:textSize="18sp" />
<TextView
android:id="@+id/lbl_street_name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/lbl_street_name"
android:textColor="@color/black"
android:textSize="18sp" />
</LinearLayout>
<EditText
android:id="@+id/txt_street_name"
android:layout_width="485dp"
android:layout_height="40dp"
android:layout_marginLeft="10dp"
android:background="@drawable/img_edittext_bg"
android:imeOptions="actionNext"
android:inputType="textCapWords"
android:nextFocusDown="@+id/txt_street_no"
android:padding="3dp"
android:textSize="18sp"
android:singleLine="true"/>
<TextView
android:id="@+id/lbl_street_no"
android:layout_width="140dp"
android:layout_height="wrap_content"
android:layout_gravity="right|center_vertical"
android:text="@string/lbl_street_no"
android:textColor="@color/black"
android:textSize="18sp" />
<EditText
android:id="@+id/txt_street_no"
android:layout_width="340dp"
android:layout_height="40dp"
android:layout_marginLeft="10dp"
android:background="@drawable/img_edittext_bg"
android:imeOptions="actionNext"
android:inputType="textCapWords"
android:nextFocusDown="@+id/txt_brgy"
android:padding="3dp"
android:textSize="20sp"
android:singleLine="true"/>
</TableRow>
</TableLayout>
<TableLayout
android:id="@+id/tbl_3"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/tbl_2"
android:layout_marginTop="5dp" >
<TableRow
android:id="@+id/tbl3_row1"
android:layout_width="fill_parent"
android:layout_height="wrap_content" >
<LinearLayout
android:id="@+id/linear_name1"
android:layout_width="215dp"
android:layout_height="wrap_content"
android:layout_gravity="right|center_vertical"
android:orientation="horizontal" >
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="*"
android:textColor="@color/red"
android:textSize="18sp" />
<TextView
android:id="@+id/lbl_brgy"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/lbl_brgy"
android:textColor="@color/black"
android:textSize="18sp" />
</LinearLayout>
<EditText
android:id="@+id/txt_brgy"
android:layout_width="975dp"
android:layout_height="40dp"
android:layout_marginLeft="10dp"
android:background="@drawable/img_edittext_bg"
android:imeOptions="actionDone"
android:inputType="textCapWords"
android:padding="3dp"
android:textSize="18sp"
android:singleLine="true"/>
</TableRow>
</TableLayout>
<TableLayout
android:id="@+id/tbl_4"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/tbl_3"
android:layout_marginTop="5dp" >
<TableRow
android:id="@+id/tbl4_row1"
android:layout_width="fill_parent"
android:layout_height="wrap_content" >
<LinearLayout
android:id="@+id/linear_name3"
android:layout_width="215dp"
android:layout_height="wrap_content"
android:layout_gravity="right|center_vertical"
android:orientation="horizontal" >
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="*"
android:textColor="@color/red"
android:textSize="18sp" />
<TextView
android:id="@+id/lbl_city"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/lbl_city"
android:textColor="@color/black"
android:textSize="18sp" />
</LinearLayout>
<Spinner
android:id="@+id/spn_city"
android:layout_width="485dp"
android:layout_height="40dp"
android:layout_marginLeft="10dp"
android:background="@drawable/img_spinner_background"
android:padding="3dp" />
</TableRow>
<TableRow
android:id="@+id/tbl4_row2"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginTop="5dp" >
<LinearLayout
android:id="@+id/linear_name3"
android:layout_width="215dp"
android:layout_height="wrap_content"
android:layout_gravity="right|center_vertical"
android:orientation="horizontal" >
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="*"
android:textColor="@color/red"
android:textSize="18sp" />
<TextView
android:id="@+id/lbl_province"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/lbl_province"
android:textColor="@color/black"
android:textSize="18sp" />
</LinearLayout>
<Spinner
android:id="@+id/spn_province"
android:layout_width="485dp"
android:layout_height="40dp"
android:layout_marginLeft="10dp"
android:background="@drawable/img_spinner_background"
android:padding="3dp"
android:textSize="20sp" />
<TextView
android:id="@+id/lbl_zipcode"
android:layout_width="140dp"
android:layout_height="wrap_content"
android:layout_gravity="right|center_vertical"
android:text="@string/lbl_zipcode"
android:textSize="18sp" />
<EditText
android:id="@+id/txt_zipcode"
android:layout_width="190dp"
android:layout_height="40dp"
android:layout_marginLeft="10dp"
android:background="@drawable/img_edittext_bg"
android:digits="1234567890"
android:imeOptions="actionNext"
android:inputType="number"
android:nextFocusDown="@+id/txt_lname"
android:padding="3dp"
android:textSize="20sp"
android:singleLine="true"/>
</TableRow>
</TableLayout>
<TableLayout
android:id="@+id/tbl_5"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/tbl_4" >
<TableRow
android:id="@+id/tbl4_row3"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginTop="5dp" >
<LinearLayout
android:layout_width="215dp"
android:layout_height="wrap_content"
android:layout_gravity="right|center_vertical"
android:orientation="horizontal" >
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="*"
android:textColor="@color/red"
android:textSize="18sp" />
<TextView
android:id="@+id/lbl_telno"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/lbl_telno"
android:textColor="@color/black"
android:textSize="18sp" />
</LinearLayout>
<EditText
android:id="@+id/txt_country_code"
android:layout_width="85dp"
android:layout_height="40dp"
android:layout_marginLeft="10dp"
android:background="@drawable/img_edittext_bg"
android:digits="1234567890"
android:hint="Country Code"
android:imeOptions="actionNext"
android:inputType="number"
android:maxLength="2"
android:nextFocusDown="@+id/txt_area_code"
android:padding="3dp"
android:singleLine="true"
android:textSize="18sp" />
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginLeft="5dp"
android:layout_marginRight="5dp"
android:src="@drawable/img_dash" />
<EditText
android:id="@+id/txt_area_code"
android:layout_width="85dp"
android:layout_height="40dp"
android:background="@drawable/img_edittext_bg"
android:digits="1234567890"
android:hint="Area Code"
android:imeOptions="actionNext"
android:inputType="number"
android:maxLength="2"
android:nextFocusDown="@+id/txt_phone_no"
android:padding="3dp"
android:singleLine="true"
android:textSize="18sp" />
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginLeft="5dp"
android:layout_marginRight="5dp"
android:src="@drawable/img_dash" />
<EditText
android:id="@+id/txt_phone_no"
android:layout_width="130dp"
android:layout_height="40dp"
android:background="@drawable/img_edittext_bg"
android:digits="1234567890"
android:hint="Phone Number"
android:imeOptions="actionNext"
android:inputType="number"
android:maxLength="7"
android:nextFocusDown="@+id/txt_faxcountry_code"
android:padding="3dp"
android:singleLine="true"
android:textSize="18sp" />
<Button
android:id="@+id/btn_add_telno"
android:layout_width="65dp"
android:layout_height="40dp"
android:layout_marginLeft="5dp"
android:background="@drawable/img_gray_unpress"
android:paddingLeft="10dp"
android:paddingRight="10dp"
android:text="@string/btn_add"
android:textColor="@color/black"
android:textSize="18sp"
android:textStyle="bold" />
<TextView
android:id="@+id/lbl_telefax_no"
android:layout_width="216dp"
android:layout_height="wrap_content"
android:layout_gravity="right|center_vertical"
android:text="@string/lbl_faxno"
android:textSize="18sp" />
<EditText
android:id="@+id/txt_faxcountry_code"
android:layout_width="85dp"
android:layout_height="40dp"
android:layout_marginLeft="10dp"
android:background="@drawable/img_edittext_bg"
android:digits="1234567890"
android:hint="Country Code"
android:imeOptions="actionNext"
android:inputType="number"
android:maxLength="2"
android:nextFocusDown="@+id/txt_faxarea_code"
android:padding="3dp"
android:singleLine="true"
android:textSize="18sp" />
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginLeft="5dp"
android:layout_marginRight="5dp"
android:src="@drawable/img_dash" />
<EditText
android:id="@+id/txt_faxarea_code"
android:layout_width="85dp"
android:layout_height="40dp"
android:background="@drawable/img_edittext_bg"
android:digits="1234567890"
android:hint="Area Code"
android:imeOptions="actionNext"
android:inputType="number"
android:maxLength="2"
android:nextFocusDown="@+id/txt_faxphone_no"
android:padding="3dp"
android:singleLine="true"
android:textSize="18sp" />
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginLeft="5dp"
android:layout_marginRight="5dp"
android:src="@drawable/img_dash" />
<EditText
android:id="@+id/txt_faxphone_no"
android:layout_width="130dp"
android:layout_height="40dp"
android:background="@drawable/img_edittext_bg"
android:digits="1234567890"
android:hint="Phone Number"
android:inputType="number"
android:maxLength="7"
android:padding="3dp"
android:singleLine="true"
android:textSize="18sp" />
<Button
android:id="@+id/btn_add_faxno"
android:layout_width="65dp"
android:layout_height="40dp"
android:layout_marginLeft="5dp"
android:background="@drawable/img_gray_unpress"
android:paddingLeft="10dp"
android:paddingRight="10dp"
android:text="@string/btn_add"
android:textColor="@color/black"
android:textSize="18sp"
android:textStyle="bold" />
</TableRow>
</TableLayout>
</RelativeLayout>
Вот код, где я получить и установить данные в EditText:
Cursor c_details = db_Handler.get_Institution_Details(_institutionID);
if(c_details.getCount() != 0){
for (c_details.moveToFirst(); !c_details.isAfterLast(); c_details.moveToNext()) {
l_accountClassificationId = c_details.getString(c_details.getColumnIndex(Constants.INSTITUTION_ACCOUNT_CLASSIFICATION_ID));
l_bldgName = c_details.getString(c_details.getColumnIndex(Constants.INSTITUTION_BLDG_NAME));
l_bldgNo = c_details.getString(c_details.getColumnIndex(Constants.INSTITUTION_BLDG_LEVEL_NO));
g_streetName = c_details.getString(c_details.getColumnIndex(Constants.INSTITUTION_STREET_NAME));
l_streetNo = c_details.getString(c_details.getColumnIndex(Constants.INSTITUTION_STREET_NO));
g_barangay = c_details.getString(c_details.getColumnIndex(Constants.INSTITUTION_BBV));
l_cityId = c_details.getString(c_details.getColumnIndex(Constants.INSTITUTION_CITY_ID));
l_provinceId = c_details.getString(c_details.getColumnIndex(Constants.INSTITUTION_PROVINCE_ID));
//l_tel_1 =
g_zipcode = c_details.getString(c_details.getColumnIndex(Constants.INSTITUTION_ZIPCODE));
g_cp_employee_population = c_details.getString(c_details.getColumnIndex(Constants.INSTITUTION_EMPLOYEE_POPULATION));
l_cp_classification = c_details.getString(c_details.getColumnIndex(Constants.INSTITUTION_EMPLOYEE_CLASSIFICATION));
Log.i("DETAILS===========", "============================================");
Log.i("l_accountClassificationId", l_accountClassificationId);
Log.i("l_bldgName", l_bldgName);
Log.i("l_bldgNo", l_bldgNo);
Log.i("l_streetName", g_streetName);
Log.i("l_streetNo", l_streetNo);
Log.i("l_barangay", g_barangay);
Log.i("l_cityId", l_cityId);
Log.i("l_provinceId", l_provinceId);
Log.i("l_zipcode", g_zipcode);
Log.i("l_cp_employee_population", g_cp_employee_population);
Log.i("l_cp_classification", l_cp_classification);
Cursor c_provinceName = db_Handler.get_provinceName(l_provinceId);
Cursor c_cityName = db_Handler.get_cityName(l_cityId);
Cursor c_accountClassification = db_Handler.get_account_classification_name(l_accountClassificationId);
if(c_provinceName.getCount() != 0){
g_province = c_provinceName.getString(c_provinceName.getColumnIndex(Constants.PROVINCE_NAME));
}else{
}
if(c_cityName.getCount() != 0){
g_city = c_cityName.getString(c_cityName.getColumnIndex(Constants.CITY_NAME));
}else{
};
int _cityPos = 0;
int _provincePos = 0;
int _classificationPos = 0;
for (int i = 0; i < l_arrayListCity.size(); i++) {
if(g_city.equals(l_arrayListCity.get(i))){
_cityPos = i;
}
}
for (int i = 0; i < l_arrayListProvince.size(); i++) {
if(g_province.equals(l_arrayListProvince.get(i))){
_provincePos = i;
}
}
g_accountClassification = c_accountClassification.getString(c_accountClassification.getColumnIndex(Constants.ACCOUNT_CLASSIFICATION_NAME));
for (int i = 0; i < l_arrayListAccountClassification.size(); i++) {
if(g_accountClassification.equals(l_arrayListAccountClassification.get(i))){
_classificationPos = i;
}
}
spn_acct_classification.setSelection(_classificationPos);
txt_bldg_name.setText(l_bldgName);
txt_bldg_no.setText(l_bldgNo);
txt_street_name.setText(g_streetName);
txt_street_no.setText(l_streetNo);
txt_brgy.setText(g_barangay);
txt_zipcode.setText(g_zipcode);
spn_city.setSelection(_cityPos);
spn_province.setSelection(_provincePos);
txt_emp_population.setText(g_cp_employee_population);
txt_classification.setText(l_cp_classification);
txt_bldg_name.requestFocus();
}
}
UPDATE: После того, как еще некоторые отладки, я выяснил, что причина, почему он не устанавливает текст editText - из-за самого счетчика. Я попытался вызвать метод, который отображает выше (код, который отображает все детали и устанавливает на editext) кнопкой и удаляет spinner.setSelection (0), и он отлично работает. Я не знаю, что есть в spinner, почему у меня есть эта проблема.
РЕШЕНИЕ: Я решил эту проблему, изменив свой xml. Удаление editText внутри макета таблицы. Я не знаю, почему, но это работает отлично.
отправьте код, где вы заполните текст редактирования программно, может быть ... – njzk2
@ njzk2 Я разместил его. Благодаря! – lolliloop
Я предполагаю, что это 'txt_bldg_name.setText (l_bldgName);' устанавливает текст в '@ + id/txt_bldg_name' edittext? 1 вещь, которую я не получаю в коде, является причиной цикла 'for' для всех значений из базы данных. Разве вы не хотите только одного? Кроме того, в какой теме происходит все это? И где-нибудь еще, где вы меняете содержание этого EditText? – njzk2