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

하나의 layout안에 2개의 listview에 대한 질문입니다

0 추천

 ArrayList<SearchResults> searchResults1 = GetSearchResults_list1();
  final ListView lv1 = (ListView) v.findViewById(R.id.hotelinformation_tap1_list1);
  lv1.setAdapter(new MyCustomBaseAdapter(context, searchResults1));

  lv1.setOnItemClickListener(new OnItemClickListener() {
   @Override
   public void onItemClick(AdapterView<?> a, View v, int position,
     long id) {
    Object o = lv1.getItemAtPosition(position);
    SearchResults fullObject = (SearchResults) o;
    Toast.makeText(context, "You have chosen: 1" + " " +
    fullObject.getName(), Toast.LENGTH_LONG).show();
   }
  });

 

ArrayList<SearchResults> searchResults2 = GetSearchResults_list2();
  final ListView lv2 = (ListView) v.findViewById(R.id.hotelinformation_tap1_list2);
  
  lv2.setAdapter(new MyCustomBaseAdapter(context, searchResults2));

  lv2.setOnItemClickListener(new OnItemClickListener() {
   @Override
   public void onItemClick(AdapterView<?> a, View v, int position,
     long id) {
    Object o = lv2.getItemAtPosition(position);
    SearchResults fullObject = (SearchResults) o;
    Toast.makeText(context, "You have chosen: 2" + " " +
    fullObject.getName(), Toast.LENGTH_LONG).show();
   }
  });

 

private ArrayList<SearchResults> GetSearchResults_list1() {
  Log.d("asd","asd1111111111111111111");
  ArrayList<SearchResults> results = new ArrayList<SearchResults>();

  SearchResults sr1 = new SearchResults();
  sr1.setName("Jet");
  sr1.setCityState("Dallas, TX");
  sr1.setPhone("214-555-1234");
  results.add(sr1);

  sr1 = new SearchResults();
  sr1.setName("Jane Doe");
  sr1.setCityState("Atlanta, GA");
  sr1.setPhone("469-555-2587");
  results.add(sr1);

  sr1 = new SearchResults();
  sr1.setName("Steve Young");
  sr1.setCityState("Miami, FL");
  sr1.setPhone("305-555-7895");
  results.add(sr1);

  sr1 = new SearchResults();
  sr1.setName("Fred Jones");
  sr1.setCityState("Las Vegas, NV");
  sr1.setPhone("612-555-8214");
  results.add(sr1);

  return results;
 }
 
 private ArrayList<SearchResults> GetSearchResults_list2() {
  Log.d("asd","asd22222222222222222");
  ArrayList<SearchResults> results = new ArrayList<SearchResults>();

  SearchResults sr1 = new SearchResults();
  sr1.setName("Jun Sangjun");
  sr1.setCityState("Dallas, TX");
  sr1.setPhone("214-555-1234");
  results.add(sr1);

  sr1 = new SearchResults();
  sr1.setName("Jane Doe");
  sr1.setCityState("Atlanta, GA");
  sr1.setPhone("469-555-2587");
  results.add(sr1);

  sr1 = new SearchResults();
  sr1.setName("Steve Young");
  sr1.setCityState("Miami, FL");
  sr1.setPhone("305-555-7895");
  results.add(sr1);

  sr1 = new SearchResults();
  sr1.setName("Fred Jones");
  sr1.setCityState("Las Vegas, NV");
  sr1.setPhone("612-555-8214");
  results.add(sr1);

  return results;
 }
 

1.질문은 하나의 레이아웃안에 2개의 리스뷰를 구성하고있는데요. 데이터 값이 동일하게 들어가요.

왜 동일하게 들어가는지 모르겠어요 ㅠㅠ 

 

클릭했을때 토스트를 띄워서 확인해보면 분명 클릭은 다르게 되는데 값은 똑같이들어가네요. 서로 다르게 함수불러쓰는데

 

2. 리스트뷰를 같이 표현할때 분명 값은 3개 이상인데 핸드폰으로 보면 값이 1나밖에 안보이네요

그래서 강제로 크기를 늘리면 값이 보이는데 그건 유동적으로 리스트뷰 크기가 바뀌는게 아니기때문에

고정한 크기만큼의 한해서만 보이네여 ㅠㅠ

 

이거 2가지 문제점좀 가르쳐 주세요 ㅎ
 

 

 

 

 

 

 

 

 

 

shyu (200 포인트) 님이 2013년 6월 27일 질문

1개의 답변

0 추천
1번질문

: 첫번째 리스트에 넣은값와 두번째 리스트에 넣은값(데이터)이 둘다 똑같아보이는데요

 맨처음사람 이름만 다르긴 한데 소스상으로 봤을때는 문제가 없어보입니다.

2번질문

MyCustomBaseAdapter의 getView 부분에 대한 소스와

하나의 로우에 대한 xml 을 어떻게 짜셨는지도 소스를 올려보셔야 알수 있을듯 싶네요
Gradler (109,780 포인트) 님이 2013년 6월 27일 답변
2번째 질문은 해결했구요, 첫번째 질문은 일부로 되나 안되나만 볼려고 첫번째사람 이름만 바꾼거에요 근데 안되더라고요 = _ =; 소스상에선 저도 문제없다고 생각하는데 왜 안되는지 모르겠네영~
...