마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

리스트 뷰에 더보기 기능 질문이요..

0 추천
리스트 뷰를 뽑아서 더보기기능 까지 구현이 되었는데요..
10줄 뽑아내고 더보기 누르면 10칸 추가되고 그런식으로 하려는데 어떻게 해야 하나요??
 
ex) 
게임1
게임2
게임3
더보기 <- 클릭
 
게임1
게임2
게임3
게임4
게임5
게임6
더보기
 
 public class test extends Activity  implements OnScrollListener{
 

 public SQLiteDatabase db;
 public Cursor cursor;
 public SimpleCursorAdapter Adapter = null;
 public SimpleCursorAdapter AdapterStomach = null;
 private ListView lv;
 
  private LayoutInflater mInflater;
  private boolean mLockListView;
 
 public static final String ROOT_DIR = "/data/data/com.romen.CancerAdvice/databases/";
 ProductDBHelper mHelper;
 public void setDB() {
  File folder = new File(ROOT_DIR);
  folder.mkdir();
  if (folder.exists()) {
  } else {
   folder.mkdirs();
  }

  AssetManager assetManager = getResources().getAssets();
  File outfile = new File(ROOT_DIR + "test.db"); // --폰에 위치할 경로
  InputStream is = null;
  FileOutputStream fo = null;
  long filesize = 0;
  try {
   // --asset 폴더 및 복사할 DB 지정
   is = assetManager.open("test.db", AssetManager.ACCESS_BUFFER);
   filesize = is.available(); // --사이즈 검증
   // 파일이 없거나 패키지 폴더에 설치된 DB파일이 포함된 DB파일 보다 크기가 같지않을 경우 DB파일을 덮어 쓴다.
   if (outfile.length() <= 0) {
    byte[] tempdata = new byte[(int) filesize];
    is.read(tempdata);
    is.close();
    outfile.createNewFile();
    fo = new FileOutputStream(outfile);
    fo.write(tempdata);
    fo.close();
   } else {
    // Toast.makeText(this, "db있음", Toast.LENGTH_LONG).show();
   }
  } catch (IOException e) {
   Toast.makeText(this, "db이동실패", Toast.LENGTH_LONG).show();
  }
 }

 
 @Override
 public void onCreate(Bundle savedInstanceState) {
  setDB();
  super.onCreate(savedInstanceState);
  setContentView(R.layout.search_test);
  
  mHelper = new ProductDBHelper(this);
  db = mHelper.getWritableDatabase();
  cursor = db.rawQuery("SELECT * FROM test ", null);
  startManagingCursor(cursor);
 
  ListView lv=(ListView)findViewById(R.id.list);
  AdapterStomach = new SimpleCursorAdapter(test.this,
    R.layout.mylist, cursor, new String[] { "year","title2","content1" },
    new int[] { R.id.text1, R.id.text2, R.id.text3  });
  
  System.out.println("AdapterStomach:::"+AdapterStomach);
  
  
   mLockListView = true;
    // 푸터를 등록. setAdapter 이전에 해야함.
   mInflater = (LayoutInflater)getSystemService(Context.LAYOUT_INFLATER_SERVICE);
   lv.addFooterView(mInflater.inflate(R.layout.listview_footer, null));
   // 스크롤 리스너 등록
   lv.setOnScrollListener(this);

    lv.setAdapter(AdapterStomach);
    lv.setTextFilterEnabled(true);
  
 }
 class ProductDBHelper extends SQLiteOpenHelper {
  public ProductDBHelper(Context context) {
   super(context, "test.db", null, 1);
   // TODO Auto-generated constructor stub
  }
  @Override
  public void onCreate(SQLiteDatabase db) {
   // TODO Auto-generated method stub
  }
  @Override
  public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
   // TODO Auto-generated method stub
  }
 }
 
 
  public void onBtnClickBackBtn(View _view)
  {
   finish();
  }
  @Override
  public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount)
  {
   // 현재 가장 처음에 보이는 셀번호와 보여지는 셀번호를 더한값이
      // 전체의 숫자와 동일해지면 가장 아래로 스크롤 되었다고 가정합니다.
   int count = totalItemCount - visibleItemCount;
   
   if(firstVisibleItem >= count && totalItemCount != 0 && mLockListView == false)
      {
        Log.i("list", "Loading next items");
      
      } 
  }
  @Override
  public void onScrollStateChanged(AbsListView view, int scrollState)
  {
   
  }
}

 

스릉흔드 (200 포인트) 님이 2014년 10월 31일 질문

1개의 답변

0 추천
http://blog.naver.com/hjkhjk2002/220167351192

 

BoardDetailActivity에 Comment쪽위주로보시면 됩니다
whdrb19 (23,520 포인트) 님이 2014년 10월 31일 답변
...