2016-11-25 12 views
0

私は、各項目が月calendar.Itを表示しているリストビューを持っている私は、日付を表示するためにgridviewを持っています。リストアイテムをスクロールすることによって私はカレンダー月が変更されているのを見ることができます。listviewのスクロールは滑らかではありません。ソリューションを検索することによって、私は今のところ、5 * 7 = 35のアイテムがグリッドビューレンダリングでスローされます。私は、レイアウトの代わりにテキストビューのみを返すことでグリッドアダプタのgetItem()を変更します私はAsyncTaskを使ってデータをロードし、グリッドアダプタに供給しました。しかし、まだスクロールが遅いです.Plzは私がこの問題を解決するのを助けます。ループを使って35個のビュー(単一の日付の各ビュー)を作成するのではなく、交互の解決策がある場合は、ここで非スクロール可能なグリッドビューからなるスクロール可能なリストビューのパフォーマンスを上げるにはどうすればよいですか?

がproblem.Weのは、両方の側にスクロールすることができます理解するための画像は、次のとおりです。

enter image description here

誰もがコードを見たいthis.If、私が提供するに関するコードがたくさんあります。

答えて

0

youtアダプターでviewTypes(オーバーライドgetItemViewType(int pos)getViewTypeCount())を使用してください。 1つのビュータイプはタイトル(e.q textView NOVEMBER 2016)、2番目のタイプはヘッダー(textViews - SUN MON TUE WED THU FRI SAT)のヘッダーとなり、3番目のタイプはTextViewsに日を含むLinearLayoutになります。

もう一つの方法は、(GrideViewがinfalted見解を続けるだろうし、あなただけの可視性とテキストを変更します)カレンダーの中の景色をリサイクルするためにあなたの答えのための

+0

おかげである可能性があります。 1番目の解決策:私はTextViewだけを膨張させてテストしたので混乱します。 2番目の解決策:私は理解していない!簡単に説明できますか? (itemView == null){itemView = layoutInflater.inflate(R.layout.test_view、null); – Patriotic

+0

ここにgetItem()のコードがあります:@Override public View getView(int i、itemView、ViewGroup viewGroup){ if );} } 返品itemView; } – Patriotic

+0

どのような種類のアダプタを使用していますか? – egoldx

関連する問題