1. La anotación de mapview setCalloutView () no puede controlar el tamaño de la burbuja emergente.
Solución: establezca la altura y el ancho de la subvista de la vista en la que entra inflado y podrá controlar el tamaño de la burbuja.
AnnotationView annotationView = new AnnotationView (anotación , contexto ) ; Ver contentView = LayoutInflater. from ( contexto ) .inflate (R.layout.content_annotation_jingq , null ) ; DisplayMetrics displayMetrics = contexto .getResources (). GetDisplayMetrics () ; int ancho = displayMetrics. widthPixels / 2 ; Ver ll = contentView.findViewById (R.id.ll_xxx) ; LinearLayout.LayoutParams p = (LinearLayout.LayoutParams) ll.getLayoutParams () ; pags. ancho = ancho; ll.setLayoutParams (p) ;
2. El conflicto del evento deslizante del mapview anidado de scrollView.
Solución: anule el evento Ontouch de mapview.
MapView .getChildAt ( 0 ) .setOnTouchListener ( nueva View.OnTouchListener () { @ Override pública booleano onTouch (Ver v , caso MotionEvent) { si (event.getAction () == MotionEvent. ACTION_UP ) { ScrollView .requestDisallowInterceptTouchEvent ( falsa ) ; } else { scrollView .requestDisallowInterceptTouchEvent ( true ) ; } return false; } }) ;