1
我使用
https://github.com/daimajia/AndroidImageSlider采用滑盖
为三个图像。而这里是我已经试过在我AsyncTask
负载三个图像从Json Data
:使用的AsyncTask加载在daimajia-AndroidImageSlider两个以上的图像与jsonData
public class AsyncHttpTask extends AsyncTask<String, Void, Integer> {
public ProgressDialog pDialog;
@Override
protected void onPreExecute() {
super.onPreExecute();
pDialog = new ProgressDialog(MainActivity.this);
pDialog.setIndeterminate(false);
pDialog.setMessage("Loading, Please wait...");
pDialog.setCancelable(true);
pDialog.show();
}
@Override
protected Integer doInBackground(String... params) {
Integer result = 0;
HttpURLConnection urlConnection;
try {
/* forming th java.net.URL object */
URL url = new URL(params[0]);
urlConnection = (HttpURLConnection) url.openConnection();
/* for Get request */
urlConnection.setRequestMethod("GET");
int statusCode = urlConnection.getResponseCode();
/* 200 represents HTTP OK */
if (statusCode == 200) {
BufferedReader r = new BufferedReader(new InputStreamReader(urlConnection.getInputStream()));
StringBuilder response = new StringBuilder();
String line;
while ((line = r.readLine()) != null) {
response.append(line);
}
parseResult(response.toString());
result = 1;
}else{
result = 0; //"Failed to fetch data!";
}
} catch (Exception e) {
Toast.makeText(MainActivity.this, e.getLocalizedMessage(), Toast.LENGTH_SHORT).show();
}
return result; //"Failed to fetch data!";
}
@Override
protected void onPostExecute(Integer result) {
/* Download complete. Lets update UI */
if (result == 1) {
adapter = new MyRecyclerAdapter(MainActivity.this, feedItemList);
mmRecyclerView.setAdapter(adapter);
pDialog.dismiss();
} else {
Toast.makeText(MainActivity.this, "Failed to fetch data!", Toast.LENGTH_SHORT).show();
}
}
}
课程负荷这一点,我们需要使用的Oncreate
此:
final String url = "http://url/Data.json"; //json data url
new AsyncHttpTask().execute(url); //execute the json data
所以,我有三个形象在我JsonData
:
"Main-header": [
{
"HeaderImg1": "http://url/Main1.jpg",
"Title": "title 1"
},
{
"HeaderImg2": "http://url/Main2.jpg",
"Title": "title 2"
},
{
"HeaderImg3": "http://url/Main2.jpg",
"Title": "title 3"
}
]
//我JsonData工作不用其他任何问题。但是,
我能为演出做这个滑块这三张图片如上JsonData
?
编辑:这里就是我和这个工作对我的onCreate而这一点,工作得很好,但我从加载JSON数据需要:
mDemoSlider = (SliderLayout) findViewById(R.id.slider);
HashMap<String, String> url_maps = new HashMap<>();
url_maps.put("title1", "http://url/pic1.jpg");
url_maps.put("title2", "http://url/pic3.jpg");
url_maps.put("title3", "http://url/pic3.jpg");
for (String name : url_maps.keySet()) {
TextSliderView textSliderView = new TextSliderView(this);
// initialize a SliderLayout
textSliderView
.description(name)
.image(url_maps.get(name))
.setScaleType(BaseSliderView.ScaleType.Fit);
//add your extra information
textSliderView.bundle(new Bundle());
textSliderView.getBundle()
.putString("extra", name);
mDemoSlider.addSlider(textSliderView);
}
mDemoSlider.setPresetTransformer(SliderLayout.Transformer.Accordion);
mDemoSlider.setPresetIndicator(SliderLayout.PresetIndicators.Right_Bottom);
mDemoSlider.setCustomAnimation(new DescriptionAnimation());
mDemoSlider.setDuration(6000);
任何帮助表示赞赏。
干杯!
你需要一次拿到3张图片,你试图实现的是什么? –
hi.because我使用这个滑块,我不认为它是needed.see我最后编辑please.i加载原始代码加载三image.but我需要使用这从JsonData这是我需要的。 – Mohsen
这很奇怪!你要求显示jsonData为: “主报头”:[{ “HeaderImg1”: “HTTP://url/Main1.jpg”, “标题”: “标题1” },{ “HeaderImg2”: “HTTP://url/Main2.jpg”, “标题”: “标题2” },{ “HeaderImg3”: “HTTP://url/Main2.jpg”, “标题“:”标题3“ } ] –