2013-03-20 8 views
-2

Я новичок в android, и мне нужна небольшая помощь. Я разрабатываю приложение так же, как google maps. Я могу создать интерфейс карты и отобразить маркеры вместе с методом tap (int index), чтобы показать текст при нажатии маркеров. Теперь мне нужно начать другое действие, когда текст (который появляется после нажатия на маркер с помощью метода ontap) щелкает так же, как мы видим отзывы и другие вещи о местоположении на карте google. Я искал и нашел реализацию некоторого balloonitemized класса наложения.Android - отображение другой активности при нажатии на текст, отображаемый после метода tap (index)

Мой вопрос заключается в том, есть ли другой способ сделать то же самое без использования этого 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, чтобы сделать все, что нужно сделать, когда щелкнут диалоговое окно.

 Смежные вопросы

  • Нет связанных вопросов^_^