3
respostas

verificar parâmetros de busca no onCreateView() do Fragment

No exemplo utilizado na vídeo-aula, o instrutor cria a lista de matérias na mão. No meu app, estou tentando criar uma Activity, que possui um formulário de consulta na parte de cima da tela, e embaixo, um fragment, que seria populado de acordo com os critérios de pesquisa selecionados no formulário.

Activity que possui um Fragment:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/activity_search_song"
    android:background="@color/colorPrimary"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">


    <Spinner
        android:id="@+id/search_opitions_spinner"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content" />

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal">

        <EditText
            android:id="@+id/search_value"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:textColor="@color/allWhite"
            android:layout_weight="9"
            android:layout_gravity="left"/>

        <ImageButton
            android:id="@+id/do_search"
            android:text="Buscar"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@drawable/search_icon"
            android:layout_weight="1"
            android:layout_gravity="right"/>

    </LinearLayout>

    <FrameLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="@color/allWhite"
        android:id="@+id/list_song_frame">

    </FrameLayout>

</LinearLayout>

Como seria possível nesse caso verificar os parâmetros da consulta feita pelo usuário dentro do onCreateView() do Fragment, para realizar a consulta de acordo com o que foi solicitado no formulário?

3 respostas

Oi Lucas, tudo bem ?

Deixa eu ver se eu entendi, você só quer popular o fragment ? Ou ele vai ser dinâmico, ou seja, dependendo do que você inserir ele exibe um fragment diferente ?

Abraços

Na verdade será sempre um fragment só, mas a lista (o conteúdo) que esse fragment vai apresentar é que vai ser diferente.

Legal !

Isso não vai ser tão complicado quanto parece :D

Seguinte, você terá o objeto na sua activity, sendo um atributo, correto ?

Nisso você só precisa ficar passando as informações para ele, para isso basta você criar um método de acesso público para que possa o manipular.

Algo do gênero :


public class Activity {

    private SeuFragment frg;

    onCreate(){
        // popula tudo, cria o fragment e coloca ele na tela

        btnBusca.setOnClickListener(
            -->
                frg.atualiza(informações);
        );
    }
}

No seu atualiza, você pega as informações e atualiza o estado da tela.

Ficou alguma dúvida ? Qualquer coisa pode falar !

Espero ter ajudado.

Abraços