मुझे लगता है कि बेहतर तरीका ListView
का उपयोग करना होगा। लेकिन यदि आपको केवल ScrollView
की आवश्यकता है।
सबसे पहले आप अपने ScrollView
की एक सीमा से ऊंचाई को ठीक तो जब भी आप को पार करती है कि सीमा लोड नए डेटा ScrollView
& को संलग्न & अपनी सीमा ऊंचाई रीसेट।
यह आप कैसे की कोशिश कर सकते है ..
एक स्वनिर्धारित ScrollView
इस तरह बनाएँ।
public class ObservableScrollView extends ScrollView
{
private ScrollViewListener scrollViewListener = null;
public ObservableScrollView(Context context)
{
super(context);
}
public ObservableScrollView(Context context, AttributeSet attrs, int defStyle)
{
super(context, attrs, defStyle);
}
public ObservableScrollView(Context context, AttributeSet attrs)
{
super(context, attrs);
}
public void setScrollViewListener(ScrollViewListener scrollViewListener)
{
this.scrollViewListener = scrollViewListener;
}
@Override
protected void onScrollChanged(int x, int y, int oldx, int oldy)
{
super.onScrollChanged(x, y, oldx, oldy);
if (scrollViewListener != null)
{
scrollViewListener.onScrollChanged(this, x, y, oldx, oldy);
}
}
}
& तो एक अंतरफलक
public interface ScrollViewListener
{
void onScrollChanged(ObservableScrollView scrollView, int x, int y, int oldx, int oldy);
}
& अपने XML लेआउट इस
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<com.solve.stackoverflow.ObservableScrollView
android:id="@+id/endless_scrollview"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<LinearLayout
android:id="@+id/endless_scrollview_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" />
</com.solve.stackoverflow.ObservableScrollView>
</LinearLayout>
& की तरह होना चाहिए बनाने के अंत में अपनी गतिविधि में इन सभी का उपयोग
public class EndLessActivity extends Activity implements ScrollViewListener
{
ObservableScrollView scrollView;
LinearLayout layout;
int threshold = 20; //Setting threshold
@Override
protected void onCreate(Bundle savedInstanceState)
{
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.endless_scrollview);
scrollView = (ObservableScrollView) findViewById(R.id.endless_scrollview);
layout = (LinearLayout) findViewById(R.id.endless_scrollview_layout);
scrollView.setScrollViewListener(this);
appendData();
}
@Override
public void onScrollChanged(ObservableScrollView scrollView, int x, int y, int oldx, int oldy)
{
// TODO Auto-generated method stub
if (y > threshold)
appendData();
}
void appendData()
{
for (int i = 0; i < 15; i++)
{
threshold += 10;//Reseting threshold.
TextView tv = new TextView(this);
tv.setBackgroundResource(R.drawable.ic_launcher);
layout.addView(tv);
}
}
}
इस & आज़माएं मुझे बताएं, भले ही यह आपकी समस्या का समाधान करे या नहीं।
धन्यवाद
एक 'ListView' का उपयोग क्यों नहीं किया जाता? यह – codeMagic
है जो मुझे कुछ दृश्य कॉन्फ़िगरेशन की आवश्यकता है जो सूचीदृश्य अनुमति नहीं देता है। (Pinterest में फोटो दिखाएं) – TpoM6oH
मैं पिन रुचि का उपयोग नहीं करता इसलिए मुझे उनके लेआउट को नहीं पता लेकिन मैं अभी कुछ पर काम कर रहा हूं जो आपको एक तस्वीर लेने और सूचीदृश्य में प्रदर्शित करने की अनुमति देता है। स्पंज की तरह कहते हैं, कल्पना के साथ कुछ भी संभव है, हाँ मेरे बच्चे हैं :) – codeMagic