0

사용자 정의보기를 작성하고 그릴 때 모양을 그리려고합니다. 도형은 CYAN 색상의 첨부 파일로 표시됩니다. 하지만 원래의 너비와 겹쳐진보기를 스크롤 한 후 리사이클 러보기에 해당 사용자 정의보기를 추가 할 때. 내가 선을 사용하려고하면 어떤 문제도 생기지 않을 것이지만 경로 만 문제를 일으키고 있습니다. 사용하고 싶은 모양을 얻을 수있는 방법을 제안하십시오.RecyclerView에 추가 할 때 경로 생성 probem을 사용하여 그려진 모양

코드 나는 내 그림의 형태가 변화하고 스크롤 할 때 당신이 볼 수있는() 메소드에게의 onDraw에서

  int totalWidth=xMargin+width; 
      int totalHeight=yMargin+height; 
      //draw required share here 
      path.moveTo(totalWidth,yMargin); 
      path.lineTo(totalWidth,yMargin); 
      path.lineTo(totalWidth-offset,yMargin+offset); 
      path.lineTo(totalWidth-offset,totalHeight-offset); 
      path.lineTo(totalWidth-2*offset,totalHeight); 
      path.lineTo(xMargin,totalHeight); 
      path.lineTo(xMargin,yMargin+offset); 
      path.lineTo(xMargin+offset,yMargin); 

      canvas.drawPath(path, pathPaint); 

enter image description here

을 모양을 그리는 데 사용. 문제에 대한 어떤 제안이라도 나를 도울 것입니다.

감사

제공되는 작은 정보

답변

0

경로가 재설정되지 않았으므로 겹치는 그림 부분을 그리는 중입니다. 을 추가하여 path.reset(); path.moveTo(totalWidth,yMargin); 내 문제가 해결되었습니다.

0

, 나는 그것이 목록의 각 항목에 대한 도형의 종류/크기를 알 수 없습니다 이후 모양 (채팅 거품)이 바로 RecyclerView에 의해 평가되지 않는 것으로 가정 할 수있다, 목록에 일부 항목이 충돌하게됩니다. 모든 항목보기를 폐기하기 위해 재활용을 강제 데이터 세트를 무효화하기 위해 어댑터를 재설정 우리는 위의 라인

// Invalidate data 
    adapter.notifyDataSetChanged(); 
    // Hard reset of the list 
    recyclerView.setAdapter(adapter); 

과 : 마음에두고 는, 나는 비슷한 문제가 있었다 이러한 라인을 사용하여 해결 말할 수 새 항목을 다시 만듭니다 (이제 각 항목에 대한 올바른보기가 있음).

도움이되기를 바랍니다.

+1

path.reset()을 추가 한 후에 문제가 해결되었습니다. 나중에 참조 할 수 있도록 ans를 게시했습니다. 감사. – AkhilGite

관련 문제