如果用户已登录,我想在某个部分显示某些内容。但是,如果用户未登录,我想显示一个对话框,提示用户登录。我还想在此对话框中显示 facebook 登录按钮。
但是,对话框内的登录按钮似乎不起作用。当我将它放在 Activity 布局中时,它确实起作用了。
有没有办法让它在对话框中正常工作?
这是对话框 xml:
<?xml version="1.0" encoding="UTF-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<ImageView
android:id="@+id/heart"
android:layout_width="80dp"
android:layout_height="70dp"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:layout_marginTop="70dp"
android:background="@drawable/favorite_dialog"/>
<TextView
android:id="@+id/question_favorites"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="#FFFFFF"
android:layout_below="@+id/heart"
android:layout_marginTop="10dp"
android:layout_marginLeft="30dp"
android:layout_marginRight="20dp"
android:layout_centerHorizontal="true"
android:textStyle="bold"
android:textSize="20sp"/>
<TextView
android:id="@+id/explanation_favorites"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="#FFFFFF"
android:layout_below="@+id/question_favorites"
android:layout_marginTop="20dp"
android:layout_marginLeft="40dp"
android:layout_marginRight="40dp"
android:textSize="18sp"
android:textStyle="italic"
android:layout_centerHorizontal="true"/>
<com.facebook.widget.LoginButton
android:id="@+id/authButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_above="@+id/button"
android:layout_centerHorizontal="true"
/>
<Button
android:id="@+id/button"
android:layout_height="40dp"
android:layout_width="200dp"
android:text="Cancelar"
android:textStyle="bold"
android:textSize="18sp"
android:layout_marginTop="10dp"
android:layout_centerHorizontal="true"
android:layout_alignParentBottom="true"
android:layout_marginBottom="30dp"
android:background="@drawable/cancel"/>
</RelativeLayout>
此对话框显示在 onCreate 方法上,并且包含一个可将其关闭的取消按钮。
如果有任何帮助,我将不胜感激。非常感谢。
最佳答案
我想出了这个,它很简单,但不太优雅。
我所做的是将 Facebook 登录按钮 Conceal 在主布局中。然后,我在对话框按钮上设置了一个监听器,并在其中添加了“facebookLogin.performClick();”。
这将点击重定向到 Facebook 登录监听器。
无论如何,谢谢!
关于java - 对话框内的 Facebook 登录按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14856375/