私はいくつかのSMSアプリケーションを開発しましたが、この問題の解決方法を理解することはできません... 1つのレイアウトで数字と日付を表示する2つのテキストビューを表示していますそれはうまくいきます...クラスのテキストビューに別のクラスのデータを埋め込む
しかし今、私はonListItemClickを実装しています。リスト項目をクリックすると、データベースからのメッセージ全体が新しいビューに読み込まれます。私はそれを達成します...
protected void onListItemClick(ListView l, View v, int position, long id) {
// TODO Auto-generated method stub
super.onListItemClick(l, v, position, id);
dba.open();
Cursor c=dba.executeQuery("select rowid _id,* from messages where rowid="+position+";");
Log.v(tag, "value count"+ c.getCount());
if(c.getCount()>0)
{
Log.v(tag, "value count"+c.getCount());
c.moveToPosition(position);
Intent intent = new Intent();
String mesage = c.getString(c.getColumnIndex("msg"));
Log.v("Value passed to class", mesage);
intent.putExtra(name, mesage);
intent.setClass(this, NewInterface.class);
startActivity(intent);
}
}
ここに私がデータを渡している他のクラスのコードです。
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.messages);
tv4 = (TextView) findViewById(R.id.tvMessages);
Bundle bundle=getIntent().getExtras();
if(bundle!=null)
{
Log.v("Value got from class", bundle.getString("name"));
tv4.setText(bundle.getString("name"));
}
リストビューは、電話番号を含むデータベースから、このメソッドを経由して移入されます....
ます。private void openAndQueryDatabase()リスト項目をクリックするだけで、{
newDB=new DBAdapter(this);
try {
newDB.open();
Cursor c = newDB.executeQuery("select distinct nm,rowid _id from messages");
if (c != null) {
if (c.moveToFirst())
Log.v(tag, "Stage 1");{
do {
String firstName = c.getString(c.getColumnIndex("nm"));
Log.v(tag, firstName);
// String date = c.getString(c.getColumnIndex("dt"));
results.add(firstName);
}while (c.moveToNext());
Log.v(tag, "Stage 1");
}
}
あなたが直面している問題 – Ishu
ユーザーが特定のlistitemをクリックすると、特定のlistviewitemに表示されている電話番号が取得され、その番号のデータベースクエリが実行され、メッセージが取得され、別のレイアウトでそれを表示するための別のクラスへ... – kashifmehmood
あなたはgetview()を追加することができますか正確にリストビュー項目には何かが含まれていますか? – Ishu