Я создал редактируемое настраиваемое listview с кнопкой вне списка. Я хочу сохранить значение editText, введенное пользователем при нажатии кнопки. Мой редактировать текст в базовом классе адаптера и мой список и кнопка находится в классе деятельности, я имею проблему доступа редактирования текста из списка и мой код выходит из строя из-за исключения нулевого указателяКак получить значение редактируемого текста из редактируемого списка.
public class ProductsList extends Activity{
ProductListAdapter dataAdapter;
ProgressDialog progressDialog=null;
ListView listView;
UserSQLiteDB usersqlite_obj;
ArrayList<Products> prodlist;
EditText edChemistName, edChemistAddr;
Button btnSave;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.productlist);
edChemistName = (EditText) findViewById(R.id.editText1);
edChemistAddr = (EditText) findViewById(R.id.editText2);
btnSave =(Button)findViewById(R.id.button1);
listView = (ListView)findViewById(R.id.listView1);
usersqlite_obj = new UserSQLiteDB(this);
progressDialog = ProgressDialog.show(this, "Saved","Please wait...", true);
// new Thread() {
runOnUiThread(new Runnable() {
public void run() {
try{
usersqlite_obj.open();
prodlist = new ArrayList<Products>();
prodlist = usersqlite_obj.getProductsList();
Log.e("prodlist", "1");
dataAdapter = new ProductListAdapter(ProductsList.this,prodlist);
listView.setAdapter(dataAdapter);
usersqlite_obj.close();
} catch (Exception e) {
Log.d("error",e.getMessage());
}
dismissLoadingDialog();
}
});
}
public void buttonClick(View V) {
for(int i=0;i<listView.getCount();i++){
View row = listView.getChildAt(i);
Log.e("editText clicked", "yes");
EditText editText= (EditText) row.findViewById(R.id.ed);
if (editText.length()>0){
String text = editText.getText().toString();
Log.e("extracted text", "text");
}
}