我使用a ListView
来显示与这些图像相关的一些图像和标题.我从互联网上获取图像.有没有办法延迟加载图像,以便文本显示时,UI不会被锁定,图像会在下载时显示?
图像总数不固定.
从Android Market获取灵感,我实现了一个Endless List,当我们到达List的末尾时,它会从服务器加载更多数据.
现在,我需要实现进度条和"正在加载..."文本,如图所示
从中获取灵感的示例代码将非常棒.
我有一个列表视图,显示图像和文本.我希望一次显示8个listview行,从服务器下载数据.当用户滚动列表视图时,我需要从服务器下载更多数据并在列表视图中显示这些项目.我使用AsyncTask从服务器下载数据.
@Override
protected Void doInBackground(Void... params) {
getData();// get data first time. 8 data items.
return null;
}
@Override
protected void onPostExecute(Void result) {
super.onPostExecute(result);
pd.dismiss();
lv= (ListView) findViewById(R.id.lvn);
yt = new YouTubeAdapter(Youtube.this,msg,title,thumb);
lv.setAdapter(yt);
lv.setOnScrollListener(new EndLessScroll());
}
Run Code Online (Sandbox Code Playgroud)
获取数据代码
public void getData()
{
HttpClient httpclient = new DefaultHttpClient();
httpclient.getParams().setParameter(CoreProtocolPNames.PROTOCOL_VERSION, HttpVersion.HTTP_1_1);
HttpGet request = new HttpGet("http://gdata.youtube.com/feeds/api/users/mbbangalore/uploads?v=2&alt=jsonc");
try
{
HttpResponse response = httpclient.execute(request);
HttpEntity resEntity = response.getEntity();
String _response=EntityUtils.toString(resEntity); // content will be consume only once
JSONObject json = new JSONObject(_response);
jsonArray = …
Run Code Online (Sandbox Code Playgroud)