1

カスタム アダプターを使用して、それをcwac-endlessアダプターに巻き付けています。問題は、ラッピング条件が無視され、cacheInBackground() 内のメソッドが無限に呼び出されることです。関連するコードを添付しています。これに対する解決策を提案してください。ありがとうございました。

    @Override
        protected boolean cacheInBackground() {
          SystemClock.sleep(100);       // pretend to do work


          try {
            msg=getMsgs();
        } catch (ClientProtocolException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (ParserConfigurationException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (SAXException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
          Log.d("count", " "+ getWrappedAdapter().getCount());
          return(getWrappedAdapter().getCount()<100);
        }

        @Override
        protected void appendCachedData() {
          if (getWrappedAdapter().getCount()<100) {
            @SuppressWarnings("unchecked")
         MsgAdapter a=(MsgAdapter)getWrappedAdapter();


          for(String s:msg)
          {
              Log.d("msg", s);
          }

          }
        }
      }
4

1 に答える 1

0

カスタム アダプターの getCount() のロジックに関係するエラーを修正しました。それを修正すると、コードは完全に機能しました。

于 2012-03-12T17:46:40.990 に答える