相关疑难解决方法(0)

Facebook SDK v4 LoginButton忽略XML自定义

最近发布的新的Facebook SDK for Android(v4.0)导致了我正在使用的自定义LoginButton的奇怪行为.下面是对不同SDK版本中相同XML的呈现方式的比较.

问题似乎是SDK 4.x中的FB图标无法正确拉伸以适合自定义大小的按钮,而在4.0.1时,android:layout_height属性将完全忽略.

我的问题是如何让SDK 4.x中的按钮出现在SDK 3.x中?XML和Java解决方案都是完全可以接受的.

适用于SDK 3.x的XML:

<com.facebook.widget.LoginButton
        android:background="@color/com_facebook_blue"
        android:id="@+id/login_btn_facebook"
        android:layout_width="225dp"
        android:layout_height="50dp"
        android:layout_marginBottom="5dp"
        android:layout_marginTop="5dp"
        android:layout_gravity="center"
        android:onClick="onFacebookLoginClick"
            />
Run Code Online (Sandbox Code Playgroud)

它在SDK 3.x上的外观(在OnePlus One上截图,运行CM11S): 使用SDK v3.x运行时的XML呈现

用于SDK 4.x的XML(按钮的包重命名为+我必须更改宽度和字体以匹配g +按钮):

<com.facebook.login.widget.LoginButton
        android:background="@color/com_facebook_blue"
        android:id="@+id/login_btn_facebook"
        android:layout_width="221dp"
        android:layout_height="50dp"
        android:layout_marginBottom="5dp"
        android:layout_marginTop="5dp"
        android:layout_gravity="center"
        android:textSize="7pt"
        android:onClick="onFacebookLoginClick"
            />
Run Code Online (Sandbox Code Playgroud)

它在SDK 4.0上的外观(在Genymotion Nexus 5上运行的屏幕截图,运行未经修改的4.4.4): 在此输入图像描述

它在SDK 4.0.1(相同的Genymotion Nexus 5)上的外观如何: 在此输入图像描述

附加信息

  1. 摘自4.0 - > 4.0.1 SDK更改日志:

登录按钮已更新,可以正确测量其大小.

  1. 相关文章:

  2. 为了支持不同的屏幕尺寸,在登录按钮上方,我有一个ViewPagerIndicator和一个ViewPager,它配置为占用定位具有定义高度的元素后剩余的所有可用垂直空间.

user-interface android facebook-sdk-4.0

37
推荐指数
2
解决办法
2万
查看次数

标签 统计

android ×1

facebook-sdk-4.0 ×1

user-interface ×1