如何在android中将编辑文本所有值存储到自定义布局中的单个变量中
我正在从数据库中获取ItemName并将其附加到自定义listview中的EditText。现在我正在更改edittext中的值,我可以打印我正在打印的内容,我想存储一个变量 我的代码:如何在android中将编辑文本所有值存储到自定义布局中的单个变量中,android,android-listview,Android,Android Listview,我正在从数据库中获取ItemName并将其附加到自定义listview中的EditText。现在我正在更改edittext中的值,我可以打印我正在打印的内容,我想存储一个变量 我的代码: public View getView(int position, View convertView, ViewGroup parent) { ViewHolder holder; if (convertView == null) {
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder holder;
if (convertView == null) {
holder = new ViewHolder();
convertView = inflater.inflate(R.layout.editmainmenulist, null);
holder.caption = (EditText) convertView
.findViewById(R.id.editmaimenu);
holder.caption1=(ImageView) convertView.findViewById(R.id.menuimage);
convertView.setTag(holder);
} else {
holder = (ViewHolder) convertView.getTag();
}
//Fill EditText with the value you have in data source
holder.caption.setText(itemnames[position]);
holder.caption.setId(position);
holder.caption1.setImageBitmap(bmps[position]);
//we need to update adapter once we finish with editing
holder.caption.setOnFocusChangeListener(new OnFocusChangeListener() {
public void onFocusChange(View v, boolean hasFocus) {
if (!hasFocus){
final int position = v.getId();
final EditText Caption = (EditText) v;
itemnames[position] = Caption.getText().toString();
System.out.println(Caption.getText().toString());//here only i am printing all values i want store all values into one varible
}
}
});
return convertView;
}
}
您可以在类范围内使用declare字符串变量,并且每次都可以使用system.out.println进行打印。因此,就在它下面,将新字符串附加到字符串变量
String str;//in the class scope
str = str.concat(Caption.getText().toString());//just below your
system.out.print(str);
尝试创建一个静态变量
static String str="";
str = str + Caption.getText().toString();
最后,您将获得单个字符串中的所有值很难准确理解您的意思。如果您从数据库获取数据,可以使用自定义CurorAdapter。优点是,如果使用它,您可以随时访问存储在光标中的数据。另一种方法是将带有所需数据的标记设置为EditText。请更具体的进一步帮助。我是从mysql数据库从服务器不是sqlite