我的所有学生数据都是s变量,即名,姓,id。我已经从列表视图中检索。现在我想从s变量中检索数据到单个字符串变量,比如,我想在一个字符串中存储名字,在另一个字符串中存储姓氏。像我在下面做的那样。但它不工作。Android:如何从字符串变量或对象检索值
我试图重复,但也给它的任何error..can一个建议我我如何可以检索从s变量值的一些想法。
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.thrd);
Log.i("INFO","ALL DETAILS");
mydb=new MyDataBase(four.this);
mydb.openDB();
lv = (ListView)findViewById(R.id.listView1);
save = (Button) findViewById(R.id.button2);
save.setOnClickListener(new OnClickListener(){
public void onClick(View arg0) {
long[] v= lv.getCheckedItemIds();
String s1=v.toString();
int h =lv.getCount();
for(int i=0;i<lv.getCount();i++) {
Object p2 = lv.getItemAtPosition(i);
String s=(String) p2.toString();
List<? extends Map<String, ?>> s4=(List<? extends Map<String, ?>>) p2;
SimpleAdapter mSchedule1 = new SimpleAdapter(four.this, s4, R.layout.col1,
new String[] {"clss","sec","_Sid","FName", "LName"}, new int[] {R.id.editText1, R.id.editText2,R.id.editText3,R.id.editText4,R.id.editText5});
lv1.setAdapter(mSchedule1);
EditText cls=(EditText)findViewById(R.id.editText1);
EditText sec=(EditText)findViewById(R.id.editText2);
EditText sid=(EditText)findViewById(R.id.editText3);
EditText fname=(EditText)findViewById(R.id.editText4);
EditText lanme=(EditText)findViewById(R.id.editText5);
final String cl=cls.getText().toString();
final String sec1=sec.getText().toString();
final String sid1=sid.getText().toString();
final String fn=fname.getText().toString();
final String ln=lanme.getText().toString();
final String p="present";
Toast.makeText(four.this, sec1, Toast.LENGTH_LONG).show();
}
}
});
showall=(Button)findViewById(R.id.button1);
showall.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
// TODO Auto-generated method stub
ArrayList<HashMap<String,String>> p2 = mydb.getAllSDetails();
SimpleAdapter mSchedule = new SimpleAdapter(four.this, p2, R.layout.column,
new String[] {"_Sid","FName", "LName"}, new int[] {R.id.txtfname, R.id.txtlname,R.id.txtage});
lv.setAdapter(mSchedule);
lv.setOnItemClickListener(select);
// int h= lv.getCount();
}
});
}
public OnItemClickListener select=new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int position, long arg3) {
int idd[] = mydb.gettingId();
str = idd[position];
}
};
我的错误日志
12-29 16:38:51.849:E/AndroidRuntime(561):致命异常:主 12-29 16:38:51.849:E/AndroidRuntime(561) :java.lang.ClassCastException:java.util.HashMap中 12-29 16:38:51.849:E/AndroidRuntime(561):在com.android.four $ 2.onClick(four.java:85) 12-29 16 :38:51.849:E/AndroidRuntime(561):at android.view.View.performClick(View.java:2408) 12-29 16:38:51.849:E/AndroidRuntime(561):at android.view.View $ PerformClick.run(View.java:8816) 12-29 16:38:51.849:E/AndroidRuntime(561):at android.os .Handler.handleCallback(Handler.java:587) 12-29 16:38:51.849:E/AndroidRuntime(561):在android.os.Handler.dispatchMessage(Handler.java:92) 12-29 16点38分:51.849:E/AndroidRuntime(561):在android.os.Looper.loop(Looper.java:123) 12-29 16:38:51.849:E/AndroidRuntime(561):at android.app.ActivityThread.main (ActivityThread.java:4627) 12-29 16:38:51.849:E/AndroidRuntime(561):在java.lang.reflect.Method.invokeNative(本机方法) 12-29 16:38:51.849:E/AndroidRuntime(561):12-29 16日java.lang.reflect.Method.invoke(Method.java:521):38:51.849:E/AndroidRuntime(561):在com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:868) 12-29 16:38:51.849:E/AndroidRuntime(561):在com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626) 12-29 16:38:51.849:E/AndroidRuntime(561):at dalvik.system.NativeStart.main(Native Method)
是自定义适配器中的edittext ??并且按钮“save”也是?你应该把整个代码放在pastebin上。 – 2011-12-29 05:00:30
“它给错误了?”也许分享这个错误是有价值的。另外,'toString'返回一个字符串,不需要转换。 – 2011-12-29 05:03:08
@ mak_just4anything edittext在col1.xml file.button保存在thrs.xml文件,我在R.layout.thrd在oncreate()。我编辑我的代码。 – 2011-12-29 10:29:12