2015-01-15 6 views
2

ListView의 무한 스크롤을 만드는 작업이 있습니다. ListView 요소는 클릭 할 수 있어야합니다 (기사 목록 및 u를 클릭하면 기사가 완전히 열립니다). 현재 터치 이벤트를 처리하려고하면 ListView 요소에 연결된 onClickListener와 충돌합니다. 어떻게해야합니까?클릭 가능한 목록이있는 무한 스크롤

여기 내 OnClickListener를이다 : 나는 onScrollListener를 연결하려고했습니다

 if (convertView == null) { 
      convertView = LayoutInflater.from(getContext()).inflate(R.layout.list_item, parent, false); 
     } 

     //Set event on list item click 
     convertView.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View view) { 

       Intent myIntent = new Intent(mContext, ShowActivity.class); 

       if (mType.equals("news")) { 
        myIntent.putExtra("id", itemsNews.get(mPosition).getId()); 
       } 
       if (mType.equals("author")) { 
        myIntent.putExtra("id", itemsAuthor.get(mPosition).getId()); 
       } 
       if (mType.equals("special")) { 
        myIntent.putExtra("id", itemsSpecial.get(mPosition).getId()); 
       } 
       myIntent.putExtra("type", mType); 
       mContext.startActivity(myIntent); 
      } 
     }); 

하지만 내 converView는 방법을 알지 못한다. 어떤 도움을 주시면 감사하겠습니다! 내가 원하는 코드를 추가하겠습니다.

+0

충돌로 인한 결과는 무엇입니까? –

+0

@ShivamVerma convertView에 onTouchListener를 연결하려고하면 ACTION_UP 이벤트 또는 ACTION_CANCEL이 트리거되지 않습니다. 그들은 onClickListener에 의해 가로 채고있는 것처럼 보입니다. 그래서 나는 정확하게 스 와이프를 인식 할 수 없다. = ( – Rishka

답변

1

목록 뷰에 OnItemClickListener를 추가하고 거기에서 새 활동을 시작하십시오.

listView.setOnItemClickListener(new OnItemClickListener() { 
     @Override 
     public void onItemClick (AdapterView <?> parent, View view,int position,long id){ 

      Intent myIntent = new Intent(mContext, ShowActivity.class); 

      switch (mType[position]) { 
       case "news": 
        myIntent.putExtra("id", itemsNews.get(position).getId()); 
        break; 
       case "author": 
        myIntent.putExtra("id", itemsAuthor.get(position).getId()); 
        break; 

       case "special": 
        myIntent.putExtra("id", itemsSpecial.get(position).getId()); 
        break; 
      } 

      myIntent.putExtra("type", mType); 
      mContext.startActivity(myIntent); 

     } 
    }); 
+0

고마워, 나는 그런 리스너가 있다는 것을 몰랐다. =) – Rishka