2016-04-06 27 views
3

Div sınıfları için ayrıştırma url çalışıyorum ancak bunların tümünü gösteremiyorum. Jsuop'u kullanarak ilkini çekmeyi başardım. İşte Ayrılan verilerimi liste görünümünde gösterilemiyor

<div class="k_block">Text 1 is here</div> 
<div class="k_block">Text 2 is here</div> 
<div class="k_block">Text 3 is here</div> 
<div class="k_block">Text 4 is here</div> 
<div class="k_block">Text 5 is here</div> 

kodum: Ben bir hata burada olduğunu biliyorum

import android.os.AsyncTask; 
import android.os.Bundle; 
import android.support.design.widget.FloatingActionButton; 
import android.support.design.widget.Snackbar; 
import android.support.v7.app.AppCompatActivity; 
import android.support.v7.widget.Toolbar; 
import android.view.View; 
import android.view.Menu; 
import android.view.MenuItem; 
import android.widget.ArrayAdapter; 
import android.widget.ListView; 

import org.jsoup.Jsoup; 
import org.jsoup.nodes.Document; 

import java.io.IOException; 

public class MainActivity extends AppCompatActivity { 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 
     Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); 
     setSupportActionBar(toolbar); 

     new Look().execute(); 

     FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab); 
     fab.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View view) { 
       Snackbar.make(view, "Replace with your own action", Snackbar.LENGTH_LONG) 
         .setAction("Action", null).show(); 
      } 
     }); 
    } 

    class Look extends AsyncTask<Void, Void, Void> { 

     String title; 
     Document doc; 
     String[] array; 

     @Override 
     protected void onPreExecute() { } 

     @Override 
     protected Void doInBackground(Void... params) { 
      try { 
       doc = Jsoup.connect("url here").get(); 
       title = doc.select("div.k_block").text(); 
       array = title.split("\\.\\.\\. "); 
      } catch (IOException e) { 
       e.printStackTrace(); 
      } 
      return null; 
     } 

     @Override 
     protected void onPostExecute(Void result) { 

      ArrayAdapter<String> adptr = 
        new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, array); 
      ListView listView = (ListView) findViewById(R.id.mylil); 
      listView.setAdapter(adptr); 

     } 
    } 

-> ArrayAdapter adptr = yeni ArrayAdapter (bu, android.R.layout.simple_list_item_1, dizi); ama ne yapacağımı bilmiyorum.

Zaman ayırdığınız için teşekkür ederiz. Bunu takdir ediyorum.

+0

Hata iletisi nedir? –

+0

yapıcının arrayadapterini çözemez (com.example.dodo.da.MainActivity.Look, int, java.lang.String []) ' –

+0

Yardımlarınız için teşekkür ederiz! –

cevap

1

yerine MainActivity.this kullanın. Bunu deneyin:

ArrayAdapter<String> adptr = 
        new ArrayAdapter<String>(MainActivity.this, 
           android.R.layout.simple_list_item_1, 
           array); 
+0

Teşekkürler ÇOK ÇOK! AppCompatActivity.this yardımcı olmadı, ancak MainAcvitity.this yardımcı oldu. –

+0

Evet, öyle. Cevabı düzelttim, lütfen doğru cevap olarak kabul et. –