मैं एंड्रॉइड बाजार की तरह ग्रिडव्यू बनाना चाहता हूं, मैं इसे इंटरनेट पर डेटाबेस से छवियों के साथ पॉप्युलेट करना चाहता हूं। इसे androidv4.support के साथ काम करने की आवश्यकता है, क्योंकि मैं 2.2 तक 4.0 रन करना चाहता हूं।कैसे करें: एक टुकड़े के अंदर ग्रिडव्यू?
किसी ने कहा, प्री-4.0 में ग्रिडव्यू बनाना संभव नहीं है, क्या यह सच है?
हालांकि यह केवल तभी काम करता है जब मैं setListAdapter()
का उपयोग करता हूं, लेकिन यह एक सूचीदृश्य की तरह प्रति पंक्ति केवल एक छवि दिखाता है, जब मैं gridview.setAdapter()
में बदलता हूं, तो यह अब और काम करता है।
यह ListFragment वर्ग है:
public static class ArrayListFragment extends ListFragment implements OnScrollListener{
ImageAdapter adapter = new ImageAdapter();
@Override
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
LayoutInflater gridInflater = (LayoutInflater) getActivity().getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View v = gridInflater.inflate(R.layout.imagelist, null);
GridView gridView = (GridView) v.findViewById(R.id.list);
ImageDownloader.Mode mode = ImageDownloader.Mode.CORRECT;
// ImageAdapter imageAdapter = new ImageAdapter();
adapter.getImageDownloader().setMode(mode);
setListAdapter(adapter);
// gridView.setAdapter(adapter);
getListView().setOnScrollListener(this);
}
यह वह जगह है ImageAdapter वर्ग:
public class ImageAdapter extends BaseAdapter {
private Context mContext;
private final ImageDownloader imageDownloader = new ImageDownloader();
public static int count = 10;
private final String[] URLS = {
"http://lh5.ggpht.com/_mrb7w4gF8Ds/TCpetKSqM1I/AAAAAAAAD2c/Qef6Gsqf12Y/s144-c/_DSC4374%20copy.jpg",
"http://lh5.ggpht.com/_Z6tbBnE-swM/TB0CryLkiLI/AAAAAAAAVSo/n6B78hsDUz4/s144-c/_DSC3454.jpg",
"http://lh3.ggpht.com/_GEnSvSHk4iE/TDSfmyCfn0I/AAAAAAAAF8Y/cqmhEoxbwys/s144-c/_MG_3675.jpg",
"http://lh6.ggpht.com/_Nsxc889y6hY/TBp7jfx-cgI/AAAAAAAAHAg/Rr7jX44r2Gc/s144-c/IMGP9775a.jpg",
"http://lh3.ggpht.com/_lLj6go_T1CQ/TCD8PW09KBI/AAAAAAAAQdc/AqmOJ7eg5ig/s144-c/Juvenile%20Gannet%20despute.jpg",
};
public int getCount() {
return count;
}
public String getItem(int position) {
return URLS[position];
}
public long getItemId(int position) {
return URLS[position].hashCode();
}
public View getView(int position, View convertView, ViewGroup parent) {
View v;
if (convertView == null) {
v = LayoutInflater.from(mContext).inflate(R.layout.image_text_view,null);
v.setLayoutParams(new GridView.LayoutParams(200,200));
ImageView imageview = (ImageView)v.findViewById(R.id.image);
imageview.setScaleType(ImageView.ScaleType.CENTER_CROP);
imageview.setPadding(6, 6, 6, 6);
imageDownloader.download(URLS[position], imageview);
}
else {
v = convertView;
}
return v;
}
public ImageDownloader getImageDownloader() {
return imageDownloader;
}
}
यह एक बहुत मदद कर सकता है अगर किसी को भी एक नमूना है
यहाँ मेरी कोशिश है। धन्यवाद
यह काम करता है, लेकिन अब यह छवियों के साथ ग्रिडव्यू पॉप्युलेट नहीं करता है, मैं getView पर त्रुटि खोजने की कोशिश कर रहा हूं। – Marckaraujo
@ मार्करौजो ने गेटव्यू के बारे में एक नोट जोड़ा - मुझे नहीं पता कि यह आपकी समस्या है या नहीं, लेकिन यह मदद कर सकता है - यूआरएल कहां से आ रहा है? – JRaymond
अभी तक कुछ भी नहीं, मैं यह दिखाने के लिए कोड अपडेट करता हूं कि यूआरएल कहां से आता है। – Marckaraujo