Как добавить кнопки всплывающего сообщения «onClick» во фрагмент - PullRequest
0 голосов
/ 02 апреля 2020

Я хочу показать сообщение Toast, когда пользователь нажимает на кнопку.

Я пробовал много решений, но оно не работает для меня.

Вот код

Java "AccountFragment"

public class AccountFragment extends Fragment {

@Nullable
@Override
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
    View rootView = inflater.inflate(R.layout.fragment_account, container, false);

    // return the view "Layout"
    return rootView;
}

// display message for the user
public void Tosta (View view) {
    Toast.makeText(getActivity() , "There is no need to Login because you are a tester :D" , Toast.LENGTH_LONG).show();
}}

XML "frag_account" Я использовал onClick

<Button
    android:id="@+id/button_login_google"
    android:layout_width="261dp"
    android:layout_height="50dp"
    android:layout_marginTop="50dp"
    android:background="@drawable/account_view2"
    android:text="Login with Google"
    android:onClick="Tosta"
    android:textColor="#fff"
    android:textSize="18dp"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toBottomOf="@+id/textView_login" />

1 Ответ

0 голосов
/ 02 апреля 2020

Проверьте это:

     public class AccountFragment extends Fragment {

        Button btn;

        @Nullable
        @Override
        public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
            View rootView = inflater.inflate(R.layout.fragment_account, container, false);

           btn = (Button) rootView.findViewById(R.id.button_login_google);
        btn.setOnClickListener(this);
            return rootView;
        }

        // display message for the user
        @Override
        public void onClick(View v) {
            // Toast here
    Toast.makeText(getActivity(),  "toast", Toast.LENGTH_LONG).show();
        }
}

Вы также можете попробовать это:

btn.setOnClickListener(new OnClickListener() {

                    @Override
                    public void onClick(View arg0) {

                    Toast.makeText(getActivity(),  "toast", Toast.LENGTH_LONG).show();

                    }
                });
...