मेरे पास एक पेजर एडाप्टर है जो एक कैलेंडर का प्रतिनिधित्व करने वाले जटिल दृश्य को बढ़ाने का अनुमान लगाता है।पेजर एडाप्टर के लिए दृश्य रीसाइक्लिंग तंत्र को मैं कैसे कार्यान्वित करूं?
कैलेंडर के प्रत्येक वर्ष को बढ़ाने के लिए लगभग 350 एमएस लगते हैं।
प्रदर्शन में सुधार करने के लिए मैं एक ही तंत्र है जो रीसाइक्लिंग विचारों का ListView
सरणी अनुकूलक (getView()
में convertView
पैरामीटर) में मौजूद है को लागू करना चाहते हैं।
एडाप्टर से मेरा वर्तमान getView()
यहां है।
@Override
protected View getView(VerticalViewPager pager, final DateTileGrid currentDataItem, int position)
{
mInflater = LayoutInflater.from(pager.getContext());
// This is were i would like to understand weather is should use a recycled view or create a new one.
View datesGridView = mInflater.inflate(R.layout.fragment_dates_grid_page, pager, false);
DateTileGridView datesGrid = (DateTileGridView) datesGridView.findViewById(R.id.datesGridMainGrid);
TextView yearTitle = (TextView) datesGridView.findViewById(R.id.datesGridYearTextView);
yearTitle.setText(currentDataItem.getCurrentYear() + "");
DateTileView[] tiles = datesGrid.getTiles();
for (int i = 0; i < 12; i++)
{
String pictureCount = currentDataItem.getTile(i).getPictureCount().toString();
tiles[i].setCenterLabel(pictureCount);
final int finalI = i;
tiles[i].setOnCheckedChangeListener(new DateTileView.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(DateTileView tileChecked, boolean isChecked)
{
DateTile tile = currentDataItem.getTile(finalI);
tile.isSelected(isChecked);
}
});
}
return datesGridView;
}
ऐसे व्यवहार को लागू करने के लिए कोई संकेतक या दिशा? विशेष रूप से मैं एडाप्टर में कैसे जान सकता हूं कि DateTileGridViews
में से एक को स्क्रीन से स्वाइप किया जा रहा है, इसलिए मैं इसे अगली बार पुन: उपयोग करने के लिए स्मृति में सहेज सकता हूं।
आपको बहुत बहुत धन्यवाद! – penguin86