Добавление Activity парсера HTML во Fragment

252
17 марта 2022, 11:10

Суть вопроса такая: у меня есть написанный парсер HTML в отдельном проекте, теперь я хочу впихнуть activity этого парсера во fragment 2 (вторая вкладка tabbed activity), чтобы он соответственно отображался в этой вкладке. Помогите, пожалуйста, объединить их.

Вот код activity парсера:

public class MainActivity extends AppCompatActivity {
    private RecyclerView recyclerView;
    private ParseAdapter adapter;
    private ArrayList<ParseItem> parseItems = new ArrayList<>();
    private ProgressBar progressBar;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        progressBar = findViewById(R.id.progressBar);
        recyclerView = findViewById(R.id.recyclerView);
        recyclerView.setHasFixedSize(true);
        recyclerView.setLayoutManager(new LinearLayoutManager(this));
        adapter = new ParseAdapter(parseItems, this);
        recyclerView.setAdapter(adapter);
        Content content = new Content();
        content.execute();
    }
    private class Content extends AsyncTask<Void,Void,Void> {
        @Override
        protected void onPreExecute() {
            super.onPreExecute();
            progressBar.setVisibility(View.VISIBLE);
            progressBar.startAnimation(AnimationUtils.loadAnimation(MainActivity.this, android.R.anim.fade_in));
        }
        @Override
        protected void onPostExecute(Void aVoid) {
            super.onPostExecute(aVoid);
            progressBar.setVisibility(View.GONE);
            progressBar.startAnimation(AnimationUtils.loadAnimation(MainActivity.this, android.R.anim.fade_out));
            adapter.notifyDataSetChanged();
        }
        @Override
        protected void onCancelled() {
            super.onCancelled();
        }
        @Override
        protected Void doInBackground(Void... voids) {
            try {
               String url = "https://www.cinemaqatar.com";
               Document doc = Jsoup.connect(url).get();
               Elements data = doc.select("span.thumbnail");
               int size = data.size();
               Log.d("doc", "doc: "+doc);
               Log.d("data", "data: "+data);
               Log.d("size", ""+size);
               for (int i = 0; i < size; i++) {
                   String imgUrl = data.select("span.thumbnail")
                           .select("img")
                           .eq(i)
                           .attr("src");
                   String title = data.select("h4.gridminfotitle")
                           .select("span")
                           .eq(i)
                           .text();
                   String detailUrl = data.select("h4.gridminfotitle")
                           .select("a")
                           .eq(i)
                           .attr("href");
                   parseItems.add(new ParseItem(imgUrl, title, detailUrl));
                   Log.d("items", "img: " +imgUrl + " . title: " + title);
               }
            } catch (IOException e) {
                e.printStackTrace();
            }
            return null;
        }
    }
}

И вот код activity Fragment 2:

public class Frag2 extends Fragment {
    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup viewGroup, Bundle savedInstanceState){
        View v = inflater.inflate(R.layout.fragment_frag2, viewGroup, false);
        return v;
    }
}
READ ALSO
Как запустить анимацию перехода между активити с общим элементом после создания второй активити

Как запустить анимацию перехода между активити с общим элементом после создания второй активити

Есть задача, при переходе с одной актвити на другую, "перемещается" общий элемент (ImageView), во второй активити есть RecyclerView куда эта картинка...

71
Как правильно вывести сообщение, что ресурс занят и поток будет ждать освобождения ресурса?

Как правильно вывести сообщение, что ресурс занят и поток будет ждать освобождения ресурса?

Пусть есть разделяемый ресурс в программе "res"Пусть есть два потока, которые хотят зайти в критическую секцию:

285