리소스를 만들어서 스피너를 사용할 때는 아래처럼 잘 동작 하였습니다. 하지만 이러한 방법은
추가/삭제가 불가능해서

분류를 DB에 저장하고, DB 내용과 스피너와 연동해서 사용하려고 했습니다.

그래서 sqlite DB를 만들고 스피너와 어렵게 연결은 했습니다. 그런데...아래와 같이 깔끔한 UI를 만들어 지지 않습니다.

도와 주십시오.


캡처1.PNG 

dbAdapter = new NotesDbAdapter(this);
      dbAdapter.open();
      Cursor c = dbAdapter.fetchfield_duplication_Notes();
      startManagingCursor(c);
       
   spin.setOnItemSelectedListener(this);

 

<?xml version="1.0" encoding="utf-8"?>
<resources>
 <string-array name="category">
        <item>통합포인트</item>
        <item>외식/커피</item>
        <item>통신</item>
   </string-array>
</resources>



여기까지 리소스를 이용해서 깔끔한 UI를 구현한 방법이였고...

아래는 DB에 저장된 내용을 스피너와 연결한 내용입니다. 막~ 이것저것 보면서 어렵게 한거라. 잘 만든건지 모르겠습니다.

 //모든 데이터의 커서를 얻어옴
         Cursor c = dbAdapter.fetchAllNotes_category(); 
      // Base 클래스에게 Cursor의 라이프사이클을 관리시킴
      startManagingCursor(c);
      
      //리스트뷰에  데이터베이스의 저장된 데이터를 연결
      String[] from = new String[] {BaseColumns._ID, NotesDbAdapter.KEY_CATEGORYNAME}; 
         
      int[] to = new int[] { R.id._id, R.id.CategoryName_text };

      mAdapter= new SimpleCursorAdapter(this, R.layout.note_row_categoryname, c, from, to);
      
      mAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
       
      spin.setAdapter(mAdapter);


이렇게 구현하니...DB에 있는 내용을 스피너로 클릭할 수 있습니다. 하지만 아래와 같이 이상하게 나타납니다.

캡처.PNG 


아무 것도 보이지는 않지만...그래도 DB에 있는 내용이 순서대로 배열되어 있습니다.

layout 을 설정해줘야 할 것 같은데....도통 감을 못 잡겠습니다.

고수님의 만은 답변 부탁드립니다...

감사합니다.