我想從另一個片段「B」使用一個接口調用一個名爲「change_color()」的方法在我的一個片段「A」中,由父活動實現。當我嘗試將我的父活動強制轉換爲接口的實例時,我得到這個ClassCastException。Java.lang.ClassCastException:活動不能轉換到接口
這裏的片段 「B」 的片段,
Public class B extends Fragment implements View.onClickListener{
public attendance_to_history var;
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.fragment_attendance_take,
container, false);
return rootView;
}
public void onActivityCreated(Bundle savedInstanceState){
super.onActivityCreated(savedInstanceState);
var = (attendance_to_history) getActivity();
}
這裏的接口的代碼
interface attendance_to_history{
public void invoke();}
下面是從我父母的活動代碼:
public class tabbed_activity extends AppCompatActivity implements attendance_to_history{
@Override
public void invoke() {
fragment_A frag = new fragment_A();
frag.change_color();
}
}
此外:瞭解Java命名約定。這應該讀取AttendanceToHistory而是... – GhostCat