Reputation: 103
I want to retrieve data from sqlite. user can have more than 1 score and i want to display it. it can show if user just have only one score, but it shows blank screen if user have more than one score.
These are my code
ScoreDetailActivity.java
public class ScoreDetailActivity extends Activity {
protected TextView userName;
protected TextView score;
protected int user_Id;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.scoredetail);
user_Id = getIntent().getIntExtra("USER_ID", 0);
SQLiteDatabase db = (new DatabaseUsername(this)).getWritableDatabase();
Cursor cursor = db.rawQuery("SELECT alm._id, alm.nama, alm.jekel, sc._id, sc.score, sc.userId FROM almag alm LEFT OUTER JOIN score sc ON alm._id = sc.userId WHERE alm._id = ?",
new String[]{""+user_Id});
if (cursor.getCount() == 1)
{
cursor.moveToFirst();
userName = (TextView) findViewById(R.id.userName);
userName.setText(cursor.getString(cursor.getColumnIndex("nama")));
score = (TextView) findViewById(R.id.score);
score.setText(cursor.getString(cursor.getColumnIndex("score")));
}
}}
scoredetail.xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<TextView
android:id="@+id/userName"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
<TextView
android:id="@+id/score"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
I hope someone can help. Thank you
Upvotes: 0
Views: 421
Reputation: 6862
cursor.getCount() == 1
means that you execute that code only if the cursor has EXACTLY one row.
In any case, if you also want to be able to display more than one result, you should rethink your layout (maybe a listview would be more suitable).
Upvotes: 2