2013-03-20 6 views
-2

나는 안드로이드를 처음 접하기 때문에 약간의 도움이 필요합니다. 나는 Google지도처럼 많은 응용 프로그램을 개발 중입니다. 지도 인터페이스를 만들고 마커를 클릭 할 때 텍스트를 표시하기 위해 tap (int index) 메서드와 함께 마커를 표시 할 수 있습니다. 이제는 ontap 메서드를 사용하여 마커를 클릭 한 후 텍스트를 클릭하면 Google지도의 위치와 리뷰 등을 볼 때와 마찬가지로 다른 활동을 시작해야합니다. balloonitemized 오버레이 클래스의 일부를 검색하여 구현했습니다.Android - 탭 (색인) 방법 후 표시된 텍스트를 클릭하면 다른 활동 표시

제 질문은이 balloonitemized 클래스를 사용하지 않고 동일한 작업을 수행 할 수있는 다른 방법이 있는지 여부입니다.

public class HelloItemizedOverlay extends ItemizedOverlay<OverlayItem>{ 
private ArrayList<OverlayItem> mOverlays = new ArrayList<OverlayItem>(); 
private Context mContext; 

public HelloItemizedOverlay(Drawable defaultMarker, Context context) { 
    super(boundCenterBottom(defaultMarker)); 
    mContext = context; 
} 

public void addOverlay(OverlayItem overlay) { 
    mOverlays.add(overlay); 
    populate(); 
} 

@Override 
protected OverlayItem createItem(int i) { 
    return mOverlays.get(i); 
} 

@Override 
public int size() { 
    return mOverlays.size(); 
} 

@Override 
protected boolean onTap(int index) { 
    OverlayItem item = mOverlays.get(index); 
    AlertDialog.Builder dialog = new AlertDialog.Builder(mContext); 
    dialog.setTitle(item.getTitle()); 
    dialog.setMessage(item.getSnippet()); 
    dialog.show(); 
    return true; 
} 
} 

답변

0

당신이 뭔가를 할 수 있습니다 :

LayoutInflater cancelInflater = getLayoutInflater(); 
dialogView = cancelInflater.inflate(R.layout.DIALOG, null); 
AlertDialog.Builder dialog = new AlertDialog.Builder(mContext); 
dialog.setView(dialogView); 
dialogView.setOnClickListener(mViewClickListener); 

당신은 당신의 대화의 레이아웃 파일을 만들어야합니다, R.layout.DIALOG

을 할 수 있습니다 다음에 별도의 위젯 findViewById를() 귀하의 레이아웃 및 그에 따라 채 웁니다.

그런 다음 onClickListener를 만들어 대화 상자를 클릭 할 때 수행해야 할 작업을 수행하십시오.