'При нажатии на часть круговой диаграммы я хочу отобразить скрытый относительный макет, как я могу это сделать? например, если я нажимаю на доктора, то хочу показать скрытое относительное расположение. '
public class HomeFragment extends Fragment {
private HomeViewModel homeViewModel;
float values[]= {60.0f,60.0f,60.0f,60.0f,60.0f,60.0f};
String services[]={"Doctor","Patient Care","Nursing","Housekeeping","Food & Beverage","Maintenance"};
RelativeLayout rlLayout;
RadioButton r6;
EditText houseKeeping;
PieChart pieChart;
public View onCreateView(@NonNull LayoutInflater inflater,
ViewGroup container, Bundle savedInstanceState) {
homeViewModel =
ViewModelProviders.of(this).get(HomeViewModel.class);
View root = inflater.inflate(R.layout.fragment_home, container, false);
pieChart = (PieChart) root.findViewById(R.id.idPieChart);
rlLayout= root.findViewById(R.id.reLayout);
r6= root.findViewById(R.id.r6);
houseKeeping = root.findViewById(R.id.other_housekeeping);
List<PieEntry> pieEntries=new ArrayList<>();
for (int i=0;i<values.length;i++){
pieEntries.add(new PieEntry(values[i],services[i]));
}
PieDataSet dataSet=new PieDataSet(pieEntries,"Services");
dataSet.setColors(CustomColors.SERVICE_COLORS);
PieData data=new PieData(dataSet);
pieChart.setData(data);
pieChart.animateY(1000);
pieChart.setTouchEnabled(true);
pieChart.getDescription().setEnabled(false);
pieChart.invalidate();
pieChart.setOnChartValueSelectedListener(new OnChartValueSelectedListener() {
@Override
public void onValueSelected(Entry e, Highlight h) {
int pos1 = e.toString().indexOf("(sum): ");
String sales = e.toString().substring(pos1 + 6);
for(int i = 0; i < values.length; i++){
if(values[i] == Float.parseFloat(sales)){
pos1 = i;
break;
}
}
if (pos1==4){
rlLayout.setVisibility(View.VISIBLE);
}
}
@Override
public void onNothingSelected() {
}
});
return root;
}
}