
에뮬상으로는 ListView가 깔끔하게 나옵니다만..
실제폰에 적용했을시 리스트뷰 한행의 높이는 변하지 않은채 ,,
위 화면에 안 보이는 데이터들이 밑으로 나열되면서 3번째 데이터가 반쯤 짤려서 더럽게 보입니다.
그림이 그려지시나요?^,^
질문을 드리고자하는 바는
밑에 보시다시피 제가 db에 5개 컬럼의 데이터를 저장합니다.
public void dbSave() {
SQLiteDatabase db;
String sql;
TextView Today = (TextView)findViewById(R.id.today);
String Today2 = Today.getText().toString();
TextView Sigan = (TextView)findViewById(R.id.sigan);
String Sigan2 = Sigan.getText().toString();
TextView juso = (TextView)findViewById(R.id.where);
String juso2 = juso.getText().toString();
TextView Wave = (TextView)findViewById(R.id.wavelength);
String Wave2 = Wave.getText().toString();
TextView Power = (TextView)findViewById(R.id.power);
String power2 = Power.getText().toString();
dbHelper = new DBHelper(this, dbName, null, dbVersion);
db = dbHelper.getWritableDatabase();
sql = String.format("INSERT INTO notice(Today2, Sigan2, juso2, Wave2, power2) VALUES('%s', '%s', '%s', '%s', '%s');", Today2, Sigan2, juso2, Wave2, power2);
Log.d("tag", sql);
db.execSQL(sql);
Toast.makeText(this, "SAVED !!.", Toast.LENGTH_LONG).show();
}
이 저장된 db를 버튼을 눌름으로써 맨위의 사진이 표시가 되는 건데요
db에는 5개의 컬럼을 저장하는 건 변함이 없고
단순히 리스트뷰에 보이는 데이터를 1-2개로 줄이고 싶은데요
이 방법에 대한 조언을 듣고자 합니다
밑에 소스는 맨 위 사진에 대한 소스 입니다,.
private void datasee() {
SQLiteDatabase db;
String sql;
ArrayList<String> item = new ArrayList<String>();
adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_single_choice, item);
ListView mList = (ListView)findViewById(R.id.list);
mList.setAdapter(adapter);
mList.setChoiceMode(ListView.CHOICE_MODE_SINGLE);
mList.setOnItemClickListener(mItemClickListener);
// findViewById(R.id.delete).setOnClickListener(mClickListener);
adapter.notifyDataSetChanged();
Log.d("SQL", "open data source success !!!");
dbHelper = new DBHelper(this, dbName, null, dbVersion);
db = dbHelper.getReadableDatabase();
sql = "SELECT*FROM notice;";
Cursor cursor = db.rawQuery(sql, null);
if(cursor.getCount() > 0) {
while(cursor.moveToNext()){
String date1 = cursor.getString(1);
Log.d("tag", "cursor.getString1 = "+date1);
String time1 = cursor.getString(2);
Log.d("tag", "cursor.getString2 =" +time1);
String wichi1 = cursor.getString(3);
Log.d("tag", "cursor.getString3 =" +wichi1);
String pajang1 = cursor.getString(4);
Log.d("tag", "cursor.getString4 =" +pajang1);
String opower1 = cursor.getString(5);
Log.d("tag", "cursor.getString5 =" +opower1);
item.add(date1+"\n"+time1+"\n"+wichi1+"\n"+pajang1+"\n"+opower1);
adapter.notifyDataSetChanged();
}
cursor.close();
}
dbHelper.close();
}
AdapterView.OnItemClickListener mItemClickListener = new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
// String mes = "Select item = " + item.get(position);
// Toast.makeText(MainActivity.this, mes, Toast.LENGTH_SHORT).show();
final String str = (String)parent.getItemAtPosition(position);
Log.d("tag", str);
Toast.makeText(getBaseContext(), str, Toast.LENGTH_SHORT).show();
AlertDialog.Builder alert = new AlertDialog.Builder(DataActivity.this);
alert.setPositiveButton("확인", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
Intent intent = new Intent(DataActivity.this, ReportActivity.class);
intent.putExtra("arraydata", str);
startActivityForResult(intent, 0);
dialog.dismiss();
}
});
alert.setMessage("Report Data");
alert.show();
}
};
}