2016-04-07 24 views
1

Ben bu tutorial kullanıyorum. Ben Json gelen görüntü elde etmeye çalışıyorum .Listview çalışıyor Peki, ben tıklattığınızda (örnek: ikinci satır) ben Görüntü2 webview görmek istiyorum, ama ben problem sahibi olmak. BuradaAndroid JSON Webview ile özel listeView

private static final String TAG = Jsonlol.class.getSimpleName(); 
private String url; 
private List<ListItem> listItem = new ArrayList<ListItem>(); 
private ListView listView; 
private CustomListAdapter adapter; 
private Dialog webViewDialog; 
private WebView webView; 
private Button btClose; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.json_main); 

    url = getString(R.string.hellojson); 

    listView = (ListView) findViewById(R.id.listview); 
    adapter = new CustomListAdapter(this, listItem); 
    listView.setAdapter(adapter); 
    listView.setOnItemClickListener(new OnItemClickListener() { 

     @Override 
     public void onItemClick(AdapterView<?> parent, View view, 
         int position, long id) { 
        if(position == 0) 
        { 
         webView.loadUrl(" Image 1 HERE "); 

         webViewDialog = new Dialog(Jsonlol.this); 
         webViewDialog.getWindow().requestFeature(Window.FEATURE_NO_TITLE); 
         webViewDialog.setContentView(R.layout.wepbas); 
         webView = (WebView) webViewDialog.findViewById(R.id.wb_webview); 
         webViewDialog.show(); 


        } 
        if(position == 1) 
        { 
         webView.loadUrl(" Image 2 HERE "); 

         webViewDialog = new Dialog(Jsonlol.this); 
         webViewDialog.getWindow().requestFeature(Window.FEATURE_NO_TITLE); 
         webViewDialog.setContentView(R.layout.wepbas); 
         webView = (WebView) webViewDialog.findViewById(R.id.wb_webview); 
         webViewDialog.show(); 


        } 
        } }); 




    JsonArrayPostRequest itemReq = new JsonArrayPostRequest(url, 
      new Response.Listener<JSONArray>() { 

       public void onResponse(JSONArray response) { 

        for (int i = 0; i < response.length(); i++) { 
         try { 


          JSONObject obj = response.getJSONObject(i); 
          ListItem item = new ListItem(); 
          item.setTitle(obj.getString("title")); 
          item.setThumbnailUrl(obj.getString("image")); 
          item.setrlevel(obj.getString("rlevel")); 

          listItem.add(item); 

         } catch (JSONException e) { 
          e.printStackTrace(); 
         } 

        } 

        adapter.notifyDataSetChanged(); 
       } 


      }, new Response.ErrorListener() { 

       public void onErrorResponse(VolleyError error) { 
        VolleyLog.d(TAG, "Error: " + error.getMessage()); 

       } 
      }); 

    AppController.getInstance().addToRequestQueue(itemReq); 
} 

@Override 
public void onDestroy() { 
    super.onDestroy(); 
} 

Json

yanlış yerde webView aradığınız
[{ 
    "id": "1", 
    "title": "Test 1", 
    "image": "http://api.androidhive.info/json/movies/1.jpg", 
    "image2": "http://api.androidhive.info/json/movies/1.jpg", 
    "rlevel": "Test 1" 
}, 
{ 
    "id": "2", 
    "title": "Test 2", 
    "image": "http://api.androidhive.info/json/movies/2.jpg", 
    "image2": "http://api.androidhive.info/json/movies/2.jpg", 
    "rlevel": "Test 2" 
}] 

cevap

1

,

if(position == 0) 
       { 
        webViewDialog = new Dialog(Jsonlol.this); 
        webViewDialog.getWindow().requestFeature(Window.FEATURE_NO_TITLE); 
        webViewDialog.setContentView(R.layout.wepbas); 
        webView = (WebView) webViewDialog.findViewById(R.id.wb_webview); 
        webView.loadUrl(listItem.get(0).getThumbnailUrl()); 
        webViewDialog.show(); 
       } 
       if(position == 1) 
       { 
        webViewDialog = new Dialog(Jsonlol.this); 
        webViewDialog.getWindow().requestFeature(Window.FEATURE_NO_TITLE); 
        webViewDialog.setContentView(R.layout.wepbas); 
        webView = (WebView) webViewDialog.findViewById(R.id.wb_webview); 
        webView.loadUrl(listItem.get(1).getThumbnailUrl()); 
        webViewDialog.show(); 
       } 

Fakat kullanıcıların liste öğesine tıklandığında amacınız sadece görüntü gösteriliyorsa, deneyebilirsin Görüntüyü picasso, ion ve bu tür kitaplıklarla bir ImageView göstermeye.

+0

Mükemmel çalışır. Çok teşekkür ederim efendim. – naber

+0

Çalıştığını duyduğuma sevindim. Rica ederim –