Merge remote-tracking branch 'origin/feature/v1.0.0' into feature/v1.0.0

This commit is contained in:
董宏宇
2020-01-10 10:47:08 +08:00
3 changed files with 44 additions and 32 deletions

View File

@@ -1,6 +1,7 @@
package com.mogo.module.navi.ui.adapter;
import android.content.Context;
import android.text.TextUtils;
import android.view.View;
import com.mogo.map.navi.MogoCalculatePath;
import com.mogo.map.search.inputtips.MogoTip;
@@ -15,9 +16,8 @@ import java.util.List;
*/
public class CalculatePathAdapter extends RecycleBaseAdapter<MogoCalculatePath> {
private int current = 0;
private int lastPosition = 0;
private String selectTag;
/**
*
*/
@@ -33,9 +33,9 @@ public class CalculatePathAdapter extends RecycleBaseAdapter<MogoCalculatePath>
//holder.setText(R.id.tv_position, tip.getName());
//holder.setText(R.id.tv_position_des, tip.getAddress());
holder.itemView.setTag(R.id.tag_position, holder.getLayoutPosition());
holder.itemView.setTag(R.id.tag_item, item);
holder.itemView.setOnClickListener(onClickListener);
holder.itemView.setSelected(current == holder.getLayoutPosition());
holder.itemView.setSelected(TextUtils.equals(item.getTagId(),selectTag));
View mName = holder.getView(R.id.amap_calculate_item_strategy_name);
holder.setText(R.id.amap_calculate_item_strategy_name, item.getStrategyName());
@@ -49,15 +49,13 @@ public class CalculatePathAdapter extends RecycleBaseAdapter<MogoCalculatePath>
this.onClickListener = onClickListener;
}
public void setCurrent(int current) {
this.current = current;
notifyItemChanged(lastPosition);
notifyItemChanged(current);
lastPosition = current;
public void setSelectTag(String selectTag) {
this.selectTag = selectTag;
notifyDataSetChanged();
}
public MogoCalculatePath getCurrentItem() {
return list.get(current);
public String getSelectTag() {
return selectTag;
}
private int getStrategyNameBkgResId(int position) {

View File

@@ -10,8 +10,6 @@ import com.mogo.map.navi.MogoNaviInfo
import com.mogo.map.search.inputtips.MogoTip
import com.mogo.module.common.MogoModulePaths
import com.mogo.module.navi.R
import com.mogo.module.navi.bean.EntityConvertUtils
import com.mogo.module.navi.bean.SearchPoi
import com.mogo.module.navi.constants.AMapConstants
import com.mogo.module.navi.constants.SearchServiceHolder
import com.mogo.module.navi.ui.adapter.CalculatePathAdapter
@@ -42,17 +40,24 @@ class ChoosePathFragment : BaseFragment(), IMogoNaviListener {
}
override fun onCalculateSuccess() {
mAdapter.setDatas(SearchServiceHolder.getNavi(activity!!).calculatedStrategies)
var calculatedStrategies = SearchServiceHolder.getNavi(activity!!)
.calculatedStrategies
if (calculatedStrategies != null&&calculatedStrategies.size>0) {
mAdapter.setDatas(calculatedStrategies)
mAdapter.selectTag=calculatedStrategies[0].tagId
}
}
override fun onoCalculateFailed() {
}
private lateinit var mAdapter:CalculatePathAdapter
private lateinit var mAdapter: CalculatePathAdapter
override fun getLayoutId(): Int {
return R.layout.fragment_search_category
}
var mogoTip: MogoTip?=null
var mogoTip: MogoTip? = null
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
mogoTip = arguments?.getParcelable<MogoTip>(AMapConstants.KEY_PARCELABLE)
@@ -67,38 +72,47 @@ class ChoosePathFragment : BaseFragment(), IMogoNaviListener {
SearchServiceHolder.fragmentManager.pop()
}
tv_navi_navi.text=getString(R.string.start_navi)
tv_navi_navi.text = getString(R.string.start_navi)
et_navi_search.setText(getString(R.string.choose_path))
et_navi_search.isEnabled=false
SearchServiceHolder.getNavi(context!!).naviTo(mogoTip?.point)
et_navi_search.isEnabled = false
SearchServiceHolder.getNavi(context!!)
.naviTo(mogoTip?.point)
SearchServiceHolder.listenerCenter.registerMogoNaviListener(MogoModulePaths.PATH_FRAGMENT_CHOOSE_PAHT,this)
SearchServiceHolder.listenerCenter.registerMogoNaviListener(
MogoModulePaths.PATH_FRAGMENT_CHOOSE_PAHT, this
)
var arrayList = ArrayList<MogoCalculatePath>()
mAdapter= CalculatePathAdapter(activity,arrayList)
rv_search_result.layoutManager=LinearLayoutManager(activity,LinearLayoutManager.VERTICAL,false)
mAdapter = CalculatePathAdapter(activity, arrayList)
rv_search_result.layoutManager =
LinearLayoutManager(activity, LinearLayoutManager.VERTICAL, false)
rv_search_result.adapter=mAdapter
rv_search_result.adapter = mAdapter
tv_navi_navi.setOnClickListener {
SearchServiceHolder.getNavi(activity!!).startNavi(false)
SearchServiceHolder.getNavi(activity!!)
.startNavi(false)
}
mAdapter.setOnClickListener {
var position = it.getTag(R.id.tag_position) as Int
mAdapter.setCurrent(position)
SearchServiceHolder.getNavi(context!!).itemClickInteraction.onItemClicked(mAdapter.currentItem.tagId)
SearchServiceHolder.getNavi(context!!)
.setLineClickInteraction {
mAdapter.setSelectTag(it)
}
mAdapter.setOnClickListener {
var item = it.getTag(R.id.tag_item) as MogoCalculatePath
mAdapter.setSelectTag(item.tagId)
SearchServiceHolder.getNavi(context!!)
.itemClickInteraction.onItemClicked(item.tagId)
}
}
companion object{
fun newInstance(searchPoi: MogoTip):Fragment{
companion object {
fun newInstance(searchPoi: MogoTip): Fragment {
var bundle = Bundle()
bundle.putParcelable(AMapConstants.KEY_PARCELABLE, searchPoi)
var choosePathFragment = ChoosePathFragment()
choosePathFragment.arguments=bundle
choosePathFragment.arguments = bundle
return choosePathFragment
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB