猿问

无法在 Fragment 中显示 Toast

在这里,我添加了 Java 和 Xml 文件,我只想在用户单击按钮时在其中显示 Toast。


这只是为了检查 Fragment 是否工作。


这里 onClickListener 在 Fragment 中对我不起作用。当我尝试时,即使 TextView 上的 setText 也不起作用。我认为组件有问题或java和xml文件的连接之间有问题


设置.java


    package com.example.dell.jsonexp;


    import android.content.Context;

    import android.content.Intent;

    import android.content.SharedPreferences;

    import android.os.Bundle;

    import android.support.annotation.Nullable;

    import android.support.v4.app.Fragment;

    import android.view.LayoutInflater;

    import android.view.View;

    import android.view.ViewGroup;

    import android.widget.Button;

    import android.widget.TextView;

    import android.widget.Toast;


    public class setting extends Fragment {

        BackgroundTask b;

    String e;

        @Override

        public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {

            View RootView = inflater.inflate(R.layout.setting, container, false);


            final Button logout= (Button) RootView.findViewById(R.id.logout);

            logout.setOnClickListener(new View.OnClickListener() {


                @Override

                public void onClick(View v) {

                    Toast.makeText(getActivity(),"Button Pressed",Toast.LENGTH_LONG).show();



                }

            });


            return inflater.inflate(R.layout.setting, container, false);

        }



    }

设置.xml


        <?xml version="1.0" encoding="utf-8"?>

    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"

        android:layout_width="match_parent" android:layout_height="match_parent">


        <Button

            android:id="@+id/logout"

            android:layout_width="wrap_content"

            android:layout_height="wrap_content"

            android:layout_alignParentBottom="true"

            android:layout_centerHorizontal="true"

            android:layout_marginBottom="50dp"

            android:text="Logout" />

    </RelativeLayout>


阿晨1998
浏览 514回答 3
3回答

慕莱坞森

您正在为从未显示的按钮设置点击侦听器。您需要返回 rootView 而不是膨胀另一个视图。return&nbsp;rootView;
随时随地看视频慕课网APP

相关分类

Java
我要回答