-1
myOnClickListener = new MyOnClickListener(getActivity()); 

활동을 위 클래스에 포함시키지 않습니다. 나는지도를 보여 주려고 노력하고있는 Onclick 이벤트를 구현했지만 클릭 메쏘드에서 응답을 얻지는 못했습니다.조각 내에서 활동 참조를 얻는 방법?

private static class MyOnClickListener implements View.OnClickListener { 

     private final Context context; 

     private MyOnClickListener(Context context) { 
      this.context = context; 
     } 

     @Override 
     public void onClick(View v) { 
       String label = "ABC Label"; 
       String uriBegin = "geo:" + myAdapter.sendLati() + "," + myAdapter.sendLongi(); 
       String query = myAdapter.sendLati() + "," + myAdapter.sendLongi() + "(" + label + ")"; 
       String encodedQuery = Uri.encode(query); 
       String uriString = uriBegin + "?q=" + encodedQuery + "&z=16"; 
       Uri uri = Uri.parse(uriString); 
       Intent intent = new Intent(android.content.Intent.ACTION_VIEW, uri); 
       startActivity(intent); 

     } 

    } 
+0

보기에서 수신기를 설정해야합니다. 단지 그것을 만드는 것은 아무 것도하지 않을 것입니다. –

+0

어떻게 정적 클래스 – KomalG

+0

내부에서 활동을 시작할 수 있습니까? 그래서이 문제를 해결하려면 어떻게해야합니까 ?? –

답변

0

변경

private final Activity activity; 

private MyOnClickListener(Activity activity) { 
    this.activity= activity; 
} 

보기에이 설정이 청취자를 수행 한 후

yourView.setOnClickListener(myOnClickListener); 
+0

이 코드는 작동하지 않습니다. –

+0

코드가 작동합니다.하지만 getActivity 대신 문맥을 전달했습니다. 감사합니다. –

0

는 문맥에 시도 :

Intent intent = new Intent(android.content.Intent.ACTION_VIEW, uri); 
context.startActivity(intent); 

가 //보기로 설정

yourView.setOnClickListener(new myOnClickListener(getActivity)); 
+0

하지만 내 OnclickListener가 작동하지 않습니다. –

+0

yourView.setOnClickListener (new myOnClickListener (this)); 위 코드는 – KomalG

+0

이 작동하지만 getActivity 대신 컨텍스트를 전달했습니다. –