点击marker
This commit is contained in:
@@ -21,10 +21,10 @@ android {
|
||||
|
||||
multiDexEnabled true
|
||||
externalNativeBuild {
|
||||
// ndk {
|
||||
// // 设置支持的SO库架构
|
||||
// abiFilters 'armeabi-v7a'
|
||||
// }
|
||||
ndk {
|
||||
// 设置支持的SO库架构
|
||||
abiFilters 'armeabi-v7a'
|
||||
}
|
||||
}
|
||||
}
|
||||
signingConfigs {
|
||||
|
||||
@@ -10,6 +10,7 @@ import androidx.recyclerview.widget.LinearLayoutManager
|
||||
import com.mogo.commons.voice.AIAssist
|
||||
import com.mogo.commons.voice.IMogoVoiceCmdCallBack
|
||||
import com.mogo.map.marker.IMogoMarker
|
||||
import com.mogo.map.marker.IMogoMarkerClickListener
|
||||
import com.mogo.map.marker.MogoMarkerOptions
|
||||
import com.mogo.map.search.geo.MogoPoiItem
|
||||
import com.mogo.map.search.inputtips.MogoTip
|
||||
@@ -32,7 +33,13 @@ import kotlinx.android.synthetic.main.fragment_search_category.tv_navi_navi
|
||||
* @author zyz
|
||||
* 2020-01-09.
|
||||
*/
|
||||
class CategorySearchFragment : BaseFragment(), CategoryView, IMogoVoiceCmdCallBack {
|
||||
class CategorySearchFragment : BaseFragment(), CategoryView, IMogoVoiceCmdCallBack
|
||||
{
|
||||
// override fun onMarkerClicked(marker: IMogoMarker?): Boolean {
|
||||
//
|
||||
// return true
|
||||
// }
|
||||
|
||||
override fun onCmdSelected(cmd: String?) {
|
||||
if (cmd?.startsWith("position") == true) {
|
||||
var index = cmd.substring(8)
|
||||
@@ -83,6 +90,7 @@ class CategorySearchFragment : BaseFragment(), CategoryView, IMogoVoiceCmdCallBa
|
||||
.icon(createWaterMask)
|
||||
.latitude(datums[index].point?.lat ?: 0.0)
|
||||
.owner("CategorySearchFragment")
|
||||
.`object`(index)
|
||||
// .anchor(0.5f, 1f)
|
||||
.longitude(datums[index].point?.lng ?: 0.0)
|
||||
arrayList.add(options)
|
||||
@@ -98,6 +106,7 @@ class CategorySearchFragment : BaseFragment(), CategoryView, IMogoVoiceCmdCallBa
|
||||
addMarkers = SearchServiceHolder.getMarkerManger()
|
||||
.addMarkers(TAG, arrayList, true)
|
||||
moveMapToRight()
|
||||
addClick()
|
||||
}
|
||||
|
||||
private fun registerVoice() {
|
||||
@@ -118,11 +127,30 @@ class CategorySearchFragment : BaseFragment(), CategoryView, IMogoVoiceCmdCallBa
|
||||
addMarkers = SearchServiceHolder.getMarkerManger()
|
||||
.addMarkers(TAG, arrayList, true)
|
||||
registerVoice()
|
||||
addClick()
|
||||
|
||||
} else {
|
||||
unRegisterVoice()
|
||||
}
|
||||
}
|
||||
|
||||
private fun addClick(){
|
||||
if (addMarkers != null) {
|
||||
for (item in addMarkers!!){
|
||||
item.setOnMarkerClickListener {
|
||||
|
||||
var index = it.mogoMarkerOptions.`object` as Int
|
||||
mAdapter.current=index
|
||||
rv_search_result.smoothScrollToPosition(index)
|
||||
updateMarker()
|
||||
true
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
private lateinit var mAdapter: SearchCategoryAdapter
|
||||
|
||||
private lateinit var mSearchPresenter: CategoryPresenter
|
||||
@@ -185,8 +213,9 @@ class CategorySearchFragment : BaseFragment(), CategoryView, IMogoVoiceCmdCallBa
|
||||
|
||||
addMarkers?.get(mAdapter.lastPosition)
|
||||
?.setIcon(getMarkerIcon(mAdapter.lastPosition))
|
||||
addMarkers?.get(mAdapter.current)
|
||||
?.setIcon(getMarkerIcon(mAdapter.current))
|
||||
var current = addMarkers?.get(mAdapter.current)
|
||||
current?.setIcon(getMarkerIcon(mAdapter.current))
|
||||
current?.setToTop()
|
||||
arrayList.get(mAdapter.lastPosition)
|
||||
.icon(getMarkerIcon(mAdapter.lastPosition))
|
||||
arrayList.get(mAdapter.current)
|
||||
|
||||
@@ -595,7 +595,7 @@ public class SearchFragment extends BaseSearchFragment
|
||||
mSearchPresenter.deleteAllCachedPoi();
|
||||
AIAssist.getInstance(getContext())
|
||||
.speakQAndACmd(getString(R.string.notice_clean_history),
|
||||
new String[] { "确定" }, new String[] { "取消" }, this);
|
||||
new String[] { "确定","立即清空" }, new String[] { "取消" }, this);
|
||||
break;
|
||||
|
||||
case BACK_CMD:
|
||||
@@ -642,8 +642,8 @@ public class SearchFragment extends BaseSearchFragment
|
||||
|
||||
@Override public void onCmdAction(String speakText) {
|
||||
|
||||
mSearchPresenter.deleteAllCachedPoi();
|
||||
mSearchPresenter.hideDialog();
|
||||
mSearchPresenter.deleteAllCachedPoiImpl();
|
||||
}
|
||||
|
||||
@Override public void onCmdCancel(String speakText) {
|
||||
|
||||
Reference in New Issue
Block a user