我正在开发一个使用google和facebook集成的应用程序...我想修复那些按钮的高度和宽度......我想设置按钮文字手动... < / p>
到目前为止我已经尝试了
<com.facebook.login.widget.LoginButton
xmlns:fb="http://schemas.android.com/apk/res-auto"
android:id="@+id/connectWithFbButton"
android:layout_width="match_parent"
android:layout_height="50dp"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:text="@string/fbloginText"
android:layout_marginTop="30dp"
/>
<com.google.android.gms.common.SignInButton
android:id="@+id/signin"
android:layout_width="match_parent"
android:layout_height="50dp"
android:text="@string/googleloginText"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:layout_marginTop="20dp"/>
虽然我已经注意到了这样的事情
fb:login_text="Login"
fb:logout_text="Logout"
or
facebook:login_text="Login"
但是我收到错误:: =&gt;在'com.test.b2c'包中找不到属性'login_text'的资源标识符
或通过编码
loginButton = (LoginButton) findViewById(R.id.connectWithFbButton);
loginButton.setText("Login");
现在我的布局看起来像这样
我也想设置这个按钮的高度和宽度.. ... 帮助我的朋友..... thx提前
更新
我在设置宽度方面没有直接问题我真正关心的是图片中显示的不一致的HEIGHT。我需要找到更好的方法来使这些按钮高度相同,并将Text设置为那些Button。
答案 0 :(得分:12)
如果我们想更改Facebook登录的自定义文字..
转到Facebook库项目并转到string.xml
你会发现类似的东西
<string name="com_facebook_loginview_log_in_button_long">Log in with facebook </string>
将其替换为您的自定义文字
虽然如果您想更改Google Plus的自定义文字,您可以
从 OnCreate 调用此
setGooglePlusButtonText(signinButton,"your custom text");
// Google Plus的文字更改方法
protected void setGooglePlusButtonText(SignInButton signInButton,
String buttonText) {
for (int i = 0; i < signInButton.getChildCount(); i++) {
View v = signInButton.getChildAt(i);
if (v instanceof TextView) {
TextView tv = (TextView) v;
tv.setTextSize(15);
tv.setTypeface(null, Typeface.NORMAL);
tv.setText(buttonText);
return;
}
}
}
对于facebook的高度不一致我已经添加填充 Facebook Button XML
android:paddingTop="20dp"
android:paddingBottom="20dp"
答案 1 :(得分:11)
这个样式的xml代码可以自定义我的应用程序的Facebook登录按钮,如图所示(文本和按钮大小)。
<com.facebook.login.widget.LoginButton
android:id="@+id/login_button"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginTop="40dip"
android:paddingTop="10dp"
android:paddingBottom="10dp"
android:textSize="20sp"
facebook:com_facebook_login_text="Facebook"
facebook:com_facebook_logout_text="Facebook" />
结果:
答案 2 :(得分:2)
添加线性布局并在其中添加以下两个按钮:
<LinearLayout
android:id="@+id/parentLinear"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<com.facebook.login.widget.LoginButton
xmlns:fb="http://schemas.android.com/apk/res-auto"
android:id="@+id/connectWithFbButton"
android:layout_width="wrap_content"
android:layout_height="50dp"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:text="@string/fbloginText"
android:layout_marginTop="30dp" />
<com.google.android.gms.common.SignInButton
android:id="@+id/signin"
android:layout_width="wrap_content"
android:layout_height="50dp"
android:text="@string/googleloginText"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:layout_marginTop="30dp" />
</LinearLayout>
这将为两个按钮提供正确的高度,宽度和保证金
答案 3 :(得分:1)
您必须将android:layout_width
更改为wrap_content
或特定尺寸,最好是dp(例如20dp
,30dp
,40dp
)。< / p>
至于错误,可能会显示错误,因为您没有编辑strings.xml,尝试使用Android Studio,它会自动为您创建这些值,还会显示您的应用预览。
答案 4 :(得分:0)
您只需要更改
即可android:layout_width="any size in dps"
android:layout_height="any size in dps"
答案 5 :(得分:0)
在您的Facebook Widget中添加以下内容:
android:paddingTop="20dp"
android:paddingBottom="20dp"
loginView:login_text="your custom text here"
<强>更新强>
您还需要包含此内容:
xmlns:loginView="http://schemas.android.com/apk/res-auto"
答案 6 :(得分:0)
{{1}}