2014-12-13 31 views
1

我還是一個關於android的初學者。我有我的數據的列表視圖,我已經插入到我的數據庫。但我想改變列表視圖到複選框列表視圖,以便我可以檢查我的列表視圖數據。這裏是我對數據庫中數據列表視圖的編碼。Android熱點改變listview到複選框列表視圖

public class StudentDetailActivity extends Activity implements OnClickListener, OnItemClickListener { 

    private ListView uGraduateNamesListView; 
    private Button addNewUndergraduateButton; 

     private ListAdapter uGraduateListAdapter; 


    private ArrayList<UndergraduateDetailsPojo> pojoArrayList; 


    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_student_detail); 


     uGraduateNamesListView = (ListView) findViewById(R.id.uGraduateListView); 
     uGraduateNamesListView.setOnItemClickListener(this); 

     addNewUndergraduateButton = (Button) findViewById(R.id.namesListViewAddButton); 
     addNewUndergraduateButton.setOnClickListener(this); 

     pojoArrayList = new ArrayList<UndergraduateDetailsPojo>(); 


     uGraduateListAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, populateList()); 

     uGraduateNamesListView.setAdapter(uGraduateListAdapter); 

    } 



    public List<String> populateList(){ 

       List<String> uGraduateNamesList = new ArrayList<String>(); 

       AndroidOpenDbHelper openHelperClass = new AndroidOpenDbHelper(this); 


     SQLiteDatabase sqliteDatabase = openHelperClass.getReadableDatabase(); 


     Cursor cursor = sqliteDatabase.query(AndroidOpenDbHelper.TABLE_NAME_GPA, null, null, null, null, null, null); 

     startManagingCursor(cursor); 

       while (cursor.moveToNext()) { 


      String ugName = cursor.getString(cursor.getColumnIndex(AndroidOpenDbHelper.COLUMN_NAME_UNDERGRADUATE_NAME)); 
      String ugUniId = cursor.getString(cursor.getColumnIndex(AndroidOpenDbHelper.COLUMN_NAME_UNDERGRADUATE_UNI_ID)); 
      double ugGpa = cursor.getDouble(cursor.getColumnIndex(AndroidOpenDbHelper.COLLUMN_NAME_UNDERGRADUATE_GPA)); 

         UndergraduateDetailsPojo ugPojoClass = new UndergraduateDetailsPojo(); 
      ugPojoClass.setuGraduateName(ugName); 
      ugPojoClass.setuGraduateUniId(ugUniId); 
      ugPojoClass.setuGraduateGpa(ugGpa); 


      pojoArrayList.add(ugPojoClass); 


      uGraduateNamesList.add(ugName); 
     } 


     sqliteDatabase.close(); 

     return uGraduateNamesList; 
    } 


    @Override 
    protected void onResume() { 
     super.onResume(); 
     pojoArrayList = new ArrayList<UndergraduateDetailsPojo>(); 
     uGraduateListAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, populateList());   
     uGraduateNamesListView.setAdapter(uGraduateListAdapter);   
    } 

    @Override 
    protected void onStart() { 
     super.onStart(); 
     pojoArrayList = new ArrayList<UndergraduateDetailsPojo>(); 
     uGraduateListAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, populateList());   
     uGraduateNamesListView.setAdapter(uGraduateListAdapter);  
    } 


    } 
} 

這裏是我的佈局(.XML)爲ListView

<ListView 
    android:id="@+id/uGraduateListView" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:layout_above="@+id/namesListViewAddButton" 
    android:layout_alignLeft="@+id/namesListViewAddButton" 
    android:layout_alignParentTop="true" > 

</ListView> 

我希望有人能幫助我解決這個問題。謝謝...

+0

是我的鏈接有幫助... – 2014-12-13 16:16:47

+0

我希望這些鏈接可以幫助你[here](http://theopentutorials.com/tutorials/android/listview/android-multiple-selection-listview/)和[here](http://www.vogella.com/tutorial s/AndroidListView/article.html) 這兩個鏈接肯定會對你有所幫助。 – 2014-12-13 16:10:53

回答

0

變化

uGraduateListAdapter = new ArrayAdapter<String>(this, 
android.R.layout.simple_list_item_1, populateList()); 

uGraduateListAdapter = new ArrayAdapter<String>(this, 
android.R.layout.simple_list_item_checked, populateList()); 

,並在XML

android:choiceMode="multipleChoice"