У меня есть список во фрагменте, и я хочу, чтобы новый вид активности начинался, когда я нажимаю что-то в этом списке. Я только пытался с моим первым вариантом, но когда я пытаюсь это я получаю ошибку:ClassCastException: невозможно передать в android.app.Activity
03-20 15:16:13.017: E/AndroidRuntime(941): Caused by: java.lang.ClassCastException: com.test.test.Algebra cannot be cast to android.app.Activity
Вот мой фрагмент класс:
public class FragmentTest extends SherlockListFragment {
String formler[]= {
"Algebra",
"Aritmetik",
"Differential- och integralkalkyl",
"Funktioner",
"Geometri",
"Komplexa tal",
"Statistik och sannolikhet",
"Trigonometri"
};
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// TODO Auto-generated method stub
setListAdapter(new ArrayAdapter<String>(getActivity().getBaseContext(), android.R.layout.simple_list_item_1, formler));
return super.onCreateView(inflater, container, savedInstanceState);
}
@Override
public void onListItemClick(ListView l, View v, int position, long id) {
// TODO Auto-generated method stub
super.onListItemClick(l, v, position, id);
String choice = formler[position];
try{
@SuppressWarnings("rawtypes")
Class choiceClass = Class.forName("com.test.test." + choice);
Intent startIntent = new Intent(getActivity().getBaseContext(), choiceClass);
startActivity(startIntent);
}catch(ClassNotFoundException e){
e.printStackTrace();
}
}
}
Что я делаю неправильно?
почему вы пытаетесь начать новую деятельность, как это? и просто измените имя класса в своем намерении и запустите его. нет необходимости использовать массив строк и делать такие вещи – hardartcore
Показать свой код 'com.test.test.Algebra' please – Terry
Кажется, что алгебра не является активностью ... Убедитесь, что ваш класс Algebra расширяет Activity..Also post Algebra класс – Pragnani