2015-02-25 3 views
0

У меня есть фрагмент списка, из которого когда щелкнут какой-либо элемент списка, я хочу перейти к другому списку. import java.util.Arrays; import java.util.List;OnListItemClick Shift from one ListFragement to Another, используя фрагмент Сделки

import android.os.Bundle; 
import android.support.v4.app.FragmentTransaction; 
import android.support.v4.app.ListFragment; 

import android.view.LayoutInflater; 
import android.view.View; 
import android.view.ViewGroup; 
import android.widget.ListView; 

public class Schedule extends ListFragment{ 
.... 
.... 
public void onListItemClick(ListView l, View v, int position, long id) { 
.... 
android.support.v4.app.FragmentManager fragmentManager = getFragmentManager(); 
android.support.v4.app.FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction(); 
DailyList fragment = new DailyList(); 
fragmentTransaction.replace(R.id.list_fragment, fragment); 
fragmentTransaction.commit(); 

}

Это новый класс, который я пытаюсь перейти.

public class DailyList extends ListFragment { 
    public View onCreateView(LayoutInflater inflater, 
     ViewGroup container, Bundle savedInstanceState){ 

    final View theInflatedView = inflater.inflate(R.layout.day, container, false); 
    return theInflatedView; 
} 
.... 
.... 
.... 
} 

Я пробовал использовать библиотеки поддержки v4 android. но вызов замены дает мне эту ошибку «Метод replace (int, Fragment) в типе FragmentTransaction не применим для аргументов (int, DailyList)».

Я прочитал несколько других ответов, которые просили использовать v4. Это то, что я делаю. Но все еще ошибка. Пожалуйста, помогите мне здесь. Благодаря!

ответ

0

Я думаю, что вы смешиваете новые типы поддержки фрагментов с классами поддержки. Заменить эти строки:

import android.app.Fragment; 

импорт android.app.FragmentManager;

с:

import android.support.v4.app.Fragment; 

импорта android.support.v4.app.FragmentManager;

Затем продлить

android.support.v4.app.FragmentActivity 

вместо

Activity 

и изменить вызовы как

getFragmentManager() 

с

getSupportFragmentManager() 

и аналогичным образом для других методов, которые вы могли бы использовать.

+0

Если вы посмотрите на мои импорта вы можете видеть, что я ввожу только v4 поддерживает классы –

+0

вызовы изменения как getFragmentManager() с getSupportFragmentManager() – Fahim

+0

Я попробовал. но все еще проблема с самим собой. Можете ли вы сказать мне, в каком xml R.id.list_fragment это нужно положить? –

Смежные вопросы