0
我正在嘗試向我的活動添加一個片段,並調用活動中片段類中的方法。 我在沒有調用活動類中的方法的情況下測試了片段,並且該片段在活動中顯示時沒有任何問題。但是我無法調用片段類中的方法。使用Activity類調用片段類中的方法
下面是我在activity類中的代碼。
使用下面的方法,當點擊一個按鈕時,我調用要顯示在我的活動中的片段。
public void checkTimes(View view){
FragmentManager fragmentManager = getFragmentManager();
FragmentTransaction fragmentTransaction =
fragmentManager.beginTransaction();
table_fragment tablefragment = new table_fragment();
fragmentTransaction.add(R.id.fragmentContainer, tablefragment);
fragmentTransaction.commit();
}
下面是片段類和填充數據方法的代碼是我想要調用的方法。
public class table_fragment extends Fragment {
View view;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflate the layout for this fragment
view = inflater.inflate(R.layout.table_fragment, container, false);
return view;
}
/**
* Method used to populate dates in the fragment
* @param startDate
* @param endDate
*/
public void populateData(Context context,LocalDate startDate, LocalDate endDate){
ArrayList<LocalDate> dates = Utility.calculateDates(startDate,endDate);
TableLayout table = (TableLayout) view.findViewById(R.id.dateTable); //getting the table layout in the fragment
for(LocalDate date : dates){
TableRow tableRow=new TableRow(context);
tableRow.setLayoutParams(new TableLayout.LayoutParams(TableLayout.LayoutParams.MATCH_PARENT, TableLayout.LayoutParams.WRAP_CONTENT));
TextView tv=new TextView(context);
tv.setText(date.toString());
tableRow.addView(tv);
table.addView(tableRow);
}
}
}
我想從活動類中調用填充日期方法並顯示片段。
我該如何做到這一點?
謝謝。