Я пытаюсь сделать приложение для отслеживания автобусов Android. Какая схема и как отобразить текущее местоположение автобуса в виде списка, где каждый элемент является автобусной остановкой.
Это мой вид переработчика
<android.support.v7.widget.RecyclerView
android:id="@+id/bus_list"
android:layout_width="match_parent"
android:layout_height="match_parent">
</android.support.v7.widget.RecyclerView>
Этот метод показывает только доступные автобусы на этом маршруте.
public void getData(View view){
final String[] buseNumbers = {"10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20"};
recyclerView = (RecyclerView) view.findViewById(R.id.bus_list);
recyclerView.setLayoutManager(new LinearLayoutManager(getActivity().getApplicationContext()));
searchBus.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// startingloc and destination will be used to find buses
String startingLoc = startingLocation.getText().toString().trim();
String destinationLoc = destinationLocation.getText().toString().trim();
String[] buseNumbers = selectbus(startingLoc, destinationLoc);
if(TextUtils.isEmpty(startingLoc) || TextUtils.isEmpty(destinationLoc)){
Toast.makeText(getActivity().getApplicationContext(), "Please enter all fields", Toast.LENGTH_SHORT).show();
return;
}
else if(startingLocation.getText().toString().equals(destinationLocation.getText().toString())){
Toast.makeText(getContext(), "Stating location and destination can't be same", Toast.LENGTH_SHORT).show();
}
else
// showing all available buses
recyclerView.setAdapter(new BusAdapter(buseNumbers));
}
});
}
Я обрабатываю событие клика следующим образом:
@Override
public void onBindViewHolder(BusviewHolder holder, int position) {
final String busNumb = data[position];
holder.busNumber.setText(busNumb);
holder.parentLayout.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(v.getContext(), busNumb, Toast.LENGTH_SHORT).show();
}
});
}
Теперь вместо всплывающего сообщения я хочу новое действие, как показано на изображении выше, где каждая запись показывает области, откуда проходит автобус, с текущим местоположением автобуса. Можете ли вы объяснить мне, какой макет следует использовать и как это сделать.