2

我正在測試我的應用程序在新的Android系統4.1 Jelly Bean和我的ListFragment不能正常工作了。ListFragment onListItemClick不再適用於Android 4.1果凍豆

當我點擊列表的行時,函數onListItemClick不再被調用。它用於在Android 3.0和Android 2.x上正常工作

是否有任何東西變成Android 4.x,有關ListFragmentonListItemClick

一個精確,我使用 'ListFragment' 從Android的支持,v4.jar

android.support.v4.app.ListFragment 

這裏是我的ListFrangment代碼:

public class MessagesListFragment extends ListFragment { 

    @Override 
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { 
     View view = inflater.inflate(R.layout.pull_to_refresh, null); 
     return view; 
    } 

    @Override 
    public void onActivityCreated(Bundle savedInstanceState) { 
     /* some initialization, working fine */ 
     /* Settings of the list Adapter*/ 

    @Override 
    public void onListItemClick(ListView l, View v, int position, long id) { 
     int messagePosition = 0; 
     if(position>0){ 
       messagePosition = position - 1; 
      } else { 
       Log.e("MessageListView", "[onListItemClick] position is inferior to zero," 
       + " message position is set to 0"); 
      } 
      String expediteur = DomboxHome.messagesService.messagesArrayList.get(messagePosition).getExpediteur(); 
      String contenu = DomboxHome.messagesService.messagesArrayList.get(messagePosition).getContenu(); 
      Log.d("MessageListView","[onListItemClick] click on message position : "+messagePosition); 

      ((MessagesActivity)getActivity()).onChooseMessageDetails(expediteur, contenu); 

    } 
+0

如果您使用的是兼容性軟件包,我幾乎可以確定某些東西無法正常工作。我觀看過的這段視頻說過最新最好的一些內容可能不會被最新的操作系統支持。所以我最好的猜測是你要麼找到解決辦法,要麼不幸地等待。 – Andy 2012-07-18 08:30:38

回答

3

我找到了解決辦法,

責備不在android-support-v4.jar但在android-pulltorefresh with是一個庫來執行拉到刷新列表。

Android pull to refresh list

圖書館不符合果凍豆完全兼容,但它已經被球隊固定的(順便說一下,謝謝你的團隊!)

Bug fixed

+0

補丁似乎爲我工作。至少我可以滾動並再次點擊。 – harmanjd 2012-07-24 19:57:04

1

我發現這個錯誤在我的應用程序有PullToRefresh庫,不支持新的Android 4.1

要解決這個問題我使用庫的一個分支

https://github.com/chrisbanes/Android-PullToRefresh

這個庫很棒。有新的PullToRefreshWebView和PullToRefreshGridView和其他功能,如從底部pulltorefresh(拉到列表的底部)和其他像新動畫一樣思考。