2012-01-10 4 views
2
public void onListItemClick(ListView parent, View v, int position, long id) 
{   
    super.onListItemClick(parent, v, position, id); 



LayoutInflater inflater = (LayoutInflater) 
    this.getSystemService(Context.LAYOUT_INFLATER_SERVICE); 

View popView = inflater.inflate(R.layout.offer_popup, null, false); 
final PopupWindow pw = new PopupWindow(

    inflater.inflate(R.layout.offer_popup, null, false), 
    500, 
    600, 
    true); 

pw.showAtLocation(this.findViewById(android.R.id.list), Gravity.CENTER, 0, 0);  

ImageView closeimage=(ImageView) popView.findViewById(R.id.imageView2); 
closeimage.setOnClickListener(new OnClickListener() { 

@Override 
public void onClick(View v) { 
// TODO Auto-generated method stub 
pw.dismiss(); 
} 
}); 

나는 위의 코드를 가지고 있으며 closeimage가 유효하며 존재하지만 OnCLick 함수가 닫히지 않은 closeimage를 클릭합니다.OnClick 기능이 실행되지 않습니다.

+2

onClick()이 작동하지 않습니까? 예를 들어 Log.d ("Log", "click")를 추가하고 체크 아웃하십시오. –

+0

결코 입력하지 않는 중단 점을 넣습니다. – lilzz

답변

1

. 그런 다음 popView에서 Image 객체를 가져 와서 바인딩을 클릭합니다. 이 클릭은 popViewWindow를 닫아야하는데, popViewWindow는 popView 객체와 관련이 없습니다.

+0

popView가 필요합니다. 그렇지 않으면 imageView2를 찾을 수 없습니다. – lilzz

+0

대신 레이아웃 (inflater.inflate (R.layout.offer_popup, null, false))을 팽창시키는 대신에 popView를 배치하십시오. Popupwindow는 당신의 견해를 가질 것이며, 당신은 이미지를 얻을 수있을 것이고, 이미지 클릭은 작동 할 것입니다. – Maxim

+0

시도해보십시오. final PopupWindow pw = 새 PopupWindow (popView, 500, 600, true); – Maxim

0

이 코드에서는 오류가 표시되지 않습니다. 어떤 요소가 뷰 내에 포커스가 있는지 테스트 할 수 있습니까?

또한 이것 좀보세요 : Android ImageView's onClickListener does not work

종류에 관해서는, 어쩌면 당신의 onClick 이벤트가 다른 뷰에 의해 차단되어 브람

0

합니다. 난 당신이 popView보기 개체를 만들었지 만 PopupWindow에 당신이 당신의 popView하지만 R.layout.offer_popup 배치하지 비정상적으로 표시되는 내용

관련 문제