在我的项目中,我有一个数据库,其中有一个名为Student的表。在该表格中,我将其归类为ROLL_NO,FIRST_NAME,LAST_NAME,CONTACT,CLASS_NAME,PASSWORD,EMAIL_ID,GENDER。 我正在从数据库中读取所有学生数据,并在列表视图中仅显示“FIRST_NAME,LAST_NAME和ROLL_NO”。代码如下:
listView = (ListView) findViewById(R.id.id_student_list);
db = new DatabaseHelper(this);
ArrayList<HashMap<String, String>> Items = new ArrayList<HashMap<String, String>>();
// Reading all contacts
Log.d("Reading: ", "Reading all students..");
List<Student> studs = db.getAllStudents();
for (Student cn : studs) {
// Writing values to map
HashMap<String, String> map = new HashMap<String, String>();
map.put("firstname", cn.getFirstname());
map.put("lastname", cn.getLastname());
map.put("roll", Integer.toString(cn.getRoll_no()));
Items.add(map);
}
// Adding Items to ListView
ListAdapter adapter = new SimpleAdapter(this, Items,
R.layout.studname_listview, new String[] { "firstname", "lastname", "roll" },
new int[] {R.id.firstname, R.id.lastname, R.id.rollnumber }); <---- this
listView.setAdapter(adapter);
当我点击特定的列表视图项时,我想得到“R.id.rollnumber”里面的值。我在listview上实现了setOnItemClickListener并且它正在工作但是我不知道如何在每次点击listview的任何项目时获得将在textview“R.id.rollnumber”上显示的值。
这是我的listview元素xml文件
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
>
<TextView
android:id="@+id/firstname"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="10sp"
android:text="sameer"
android:textSize="16sp"
android:textStyle="bold" >
</TextView>
<TextView
android:id="@+id/lastname"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBaseline="@+id/firstname"
android:layout_alignBottom="@+id/firstname"
android:layout_toRightOf="@+id/firstname"
android:text="waskar"
android:textSize="16sp"
android:textStyle="bold" />
<TextView
android:id="@+id/rollnumber" <!-- the value which will be displayed in here -->
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBaseline="@+id/lastname"
android:layout_alignBottom="@+id/lastname"
android:layout_alignParentRight="true"
android:layout_marginRight="22dp"
android:textStyle="bold" />
</RelativeLayout>
答案 0 :(得分:0)
哈希映射?您应该为学生信息创建特殊类,并覆盖适配器的OnItemClick方法