0
从数据库多个列中的值这是我的代码:如何显示在一行中的Android
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//populateListView();
mydb = new DBHelper(this);
ArrayList<String> array_list = mydb.getAllCotacts();
ArrayAdapter<String> arrayAdapter = new ArrayAdapter<>(this, android.R.layout.simple_list_item_1, array_list);
ListView obj = (ListView) findViewById(R.id.listView);
obj.setAdapter(arrayAdapter);
obj.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) {
// TODO Auto-generated method stub
int id_To_Search = arg2 + 1;
Bundle dataBundle = new Bundle();
dataBundle.putInt("id", id_To_Search);
Intent intent = new Intent(getApplicationContext(), DisplayContact.class);
intent.putExtras(dataBundle);
startActivity(intent);
}
});
b1=(Button)findViewById(R.id.button);
b1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent i = new Intent(getApplicationContext(),DisplayContact.class);
startActivity(i);
}
});
}
这是我getallcontact代码.....
public ArrayList<String> getAllCotacts()
{
ArrayList<String> array_list = new ArrayList<>();
//hp = new HashMap();
SQLiteDatabase db = this.getReadableDatabase();
Cursor res = db.rawQuery("select * from contacts", null);
res.moveToFirst();
while(!res.isAfterLast()){
array_list.add(res.getString(res.getColumnIndex(CONTACTS_COLUMN_NAME)));
array_list.add(res.getString(res.getColumnIndex(CONTACTS_COLUMN_EMAIL)));
res.moveToNext();
}
return array_list;
}
,输出为。 。 output
我怎么能在一个同时显示名和电子邮件行?
你可以为此创建自定义列表视图,否则您可以在单个字符串中拼接名称和电子邮件并添加到array_list。 –
将所有内容存储在一个字符串中并将其添加到数组列表中。 –