onCreate()
방법 : 모든 데이터를 표시 할 수데이터베이스에서 아이콘을 표시
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.database);
ListView lv=(ListView)findViewById(R.id.mylist);
dbh = new DatabaseHelper(this);
c = dbh.getReadableDatabase().rawQuery("SELECT _id, " +
DatabaseHelper.NAME +
", " + DatabaseHelper.LASTNAME +
", " + DatabaseHelper.ans2 +
" FROM " +
DatabaseHelper.TABLE_NAME, null); // initializing
String[] dataFrom ={DatabaseHelper.NAME, DatabaseHelper.LASTNAME, DatabaseHelper.ans2};
int[] dataTo = {R.id.name, R.id.value1, R.id.value2};
SimpleCursorAdapter adapter = new SimpleCursorAdapter(this,
R.layout.row, c, dataFrom, dataTo);
lv.setAdapter(adapter);
registerForContextMenu(lv);
}
내 row.xml
파일 :
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal" >
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="left"
android:layout_weight="30"
android:id="@+id/name"
/>
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="40"
android:gravity="center_horizontal"
android:id="@+id/value1"
/>
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="30"
android:gravity="right"
android:id="@+id/value2"
/>
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="right"
android:src="@drawable/ic_launcher"
android:id="@+id/icon"
/>
</LinearLayout>
내가 성공적으로 SQLite는있는 테이블을 만들었습니다. 나는 (ListView
을 사용하여) 표시 될 각 데이터베이스 행에 아이콘을 표시하고 아이콘은 행의 특정 요소에 의존해야합니다. 예를 들어 성별 (DatabaseHelper.SEX
)이 남성이면 남성 아이콘이 표시되고 성별이 여성이면 여성 아이콘이 표시됩니다. 내 xml 파일을 보면 이미 아이콘이 표시되어 있습니다 (기본 안드로이드 아이콘이지만 원하는 것은 아닙니다). 어떤 아이디어?
덕분에 시간이 정확히 섹스 컬럼의 인덱스를 얻을 columnIndex에 어떻게하는지 –
놔, 내가 해보자? 성 열은 문자열 데이터 유형 –
@ da_scav_from_windy_city'dataFrom' 배열을 보면'dataTo' 배열의'DatabaseHelper.SEX'와'R.id.icon'이 같은 위치에 있으므로'ViewBinder'는'setViewValue' 메쏘드에서 여러분에게 어떤 칼럼 인덱스를 줄지 안다. 데이터베이스에 성을 저장하는 방법을 모르겠다 고 말했기 때문에'int' 값 ('sex'에 따라'0' 또는'1')을 사용한다고 가정하고,'String'을 사용하면 그'String'을 사용하십시오. – Luksprog