내로드 버튼의 onclicklistener에서 sqlite의 데이터로 listview를 채우려고했습니다.sqlite를 사용하여 데이터베이스에서 ListView를 채울 수 없습니다.
그러나 내 코드에서 뭔가 작동하지 않습니다. 여기 내 코드가있다.
public class TotalResults extends ListActivity {
DatabaseManager db = new DatabaseManager(this);
List<PlayerData> contacts;
String name;
int score;
TextView result;
TextView saved;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_total_results);
result = (TextView) findViewById (R.id.textResult);
saved = (TextView) findViewById (R.id.textLoad);
Button save = (Button) findViewById (R.id.buttonSave);
Button load = (Button) findViewById (R.id.buttonLoad);
Button delete = (Button) findViewById (R.id.buttonDelete);
contacts = db.getAllContacts();
final ArrayAdapter<PlayerData> adapter = new ArrayAdapter<PlayerData>(this,
android.R.layout.simple_list_item_1, contacts);
setListAdapter(adapter);
Intent intent = getIntent();
name = intent.getExtras().getString("name");
score = intent.getExtras().getInt("score");
result.setText("Name: "+name+" , Score: "+score);
save.setOnClickListener(new OnClickListener(){
public void onClick(View v) {
db.addContact(new PlayerData(name,score));
Log.d("Inserting: ", name);
Log.d("Inserting: ", Integer.toString(score));
}
});
load.setOnClickListener(new OnClickListener(){
public void onClick(View v) {
//check to ensure there are users
if(contacts.size()==0) {
String text = "No players stored.";
Toast.makeText(TotalResults.this, text, Toast.LENGTH_SHORT).show();
} else {
PlayerData player = contacts.get(0);
String showName = player.getName();
int showScore = player.getscore();
Log.d("Getting:", showName);
Log.d("Getting:", Integer.toString(showScore));
adapter.add(player);
saved.setText("Player Name: "+showName+" Player Score: "+showScore);
}
}
});
delete.setOnClickListener(new OnClickListener(){
public void onClick(View v) {
List<PlayerData> contacts = db.getAllContacts();
//check to ensure there are users
if(contacts.size()==0) {
String text = "No players to delete.";
Toast.makeText(TotalResults.this, text, Toast.LENGTH_SHORT).show();
} else {
PlayerData player = contacts.get(0);
String showName = player.getName();
int showScore = player.getscore();
Log.d("Deleting:", showName);
Log.d("Deleting:", Integer.toString(showScore));
db.deleteContact(player);
}
}
});
}
이미 setListAdapter 개념을 적용했습니다. 그러나 logcat은 데이터베이스에서 이름과 점수를 얻고 있지만 데이터를 가져올 수있는 신호는 없다고 가정합니다. 그러나 삽입 된 데이터는 삭제할 수 있습니다. 또한로드 단추는 목록보기에 아무 것도 표시하지 않습니다. 도와주세요. 미리 감사드립니다. : 데이터 모델 SQLite는이
를 ArrayAdapter와, (예를 SimpleCursorAdapter에 대한) CursorAdapter 또는 그 서브 클래스 중 하나를 사용하는 것입니다하지만 거기 DB를 아직 안드로이드에서 새롭기 때문에 아직 모르는 많은 메소드와 함수가 있으므로 시도하지 않았습니다. 그것을 해결하는 또 다른 방법이 있습니까? 누군가 다른 솔루션을 게시하는 또 다른 방법이 있다면 – Jeongbebs
그러나 필요하지 않은 질문을 복제하십시오. – Raghunandan
괜찮아. 감사! – Jeongbebs