¿Es posible cambiar la imagen del botón de inicio de sesión de Facebook en Facebook Android SDK3?

Facebook Android sdk tiene un com.facebook.widget.LoginButton

Quiero poner mi propia imagen para el botón de inicio de sesión. Es posible ?

Hasta ahora he intentado añadir android:src="@drawable/facebook" al archivo de diseño como un atributo para el elemento de botón sin suerte

setBackgroundResource invalidando el texto para ser cadena vacía y luego definiendo el setBackgroundResource del botón a mi imagen (no necesitaba la funcionalidad dinámica de inicio de sesión / salida de texto)

 <com.facebook.widget.LoginButton xmlns:fb="http://schemas.android.com/apk/res-auto" android:id="@+id/login_button" android:layout_width="249dp" android:layout_height="45dp" android:layout_above="@+id/textView1" android:layout_centerHorizontal="true" android:layout_gravity="center_horizontal" android:layout_marginBottom="30dp" android:layout_marginTop="30dp" android:contentDescription="@string/login_desc" android:scaleType="centerInside" fb:login_text="" fb:logout_text="" /> 

Y en código definí el recurso de fondo:

 final LoginButton button = (LoginButton) findViewById(R.id.login_button); button.setBackgroundResource(R.drawable.facebook); 

Tipo de una solución, pero preferí este cambio de código SDK de Facebook (aunque es muy sencillo también) y se preocupan por la actualización cada vez que actualizar su versión.

Sí si usted quiere cambiar el texto y la imagen ambos entonces escribe el código abajo.

 authButton = (LoginButton) view.findViewById(R.id.authButton); authButton.setBackgroundResource(R.drawable.icon); authButton.setText("Login"); authButton.setCompoundDrawablesWithIntrinsicBounds(null, null, null, null);` 

De otra manera

 loginButton = (LoginButton) findViewById(R.id.fb_login_button); loginButton.setVisibility(View.GONE); ImageView ivFbCustomButton = (ImageView) findViewById(R.id.iv_fb_custom_button); ivFbCustomButton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { com.facebook.login.widget.LoginButton btn = new com.facebook.login.widget.LoginButton(FacebookActivity.this); btn.performClick(); } }); 

Nota:

Tienes que escribir el código para dos botones en el archivo XML. Uno es para el botón del facebook del defecto (lo estamos ocultando en el paso inicial). El segundo es para el botón personalizado

  • Android - Facebook SDK 3 - Cómo iniciar sesión mediante programación sin LoginButton
  • Identificar el botón de inicio de sesión de Facebook SDK 3 en el clic
  • No se pudo encontrar el método release () para los argumentos
  • SDK de Facebook para Android duplicar la biblioteca de soporte en las dependencias
  • Compartir texto en facebook con la intención de compartir de Android
  • ¿Cómo detectar un evento de cierre de sesión con la API de Android de Facebook v4?
  • Android facebook sdk v4.0 no funciona
  • La clave de la aplicación de Android no coincide con ninguna hash de clave almacenada
  • Facebook SDK 3.8: permiso publish_actions no devuelto
  • Error al recuperar el correo electrónico y la ubicación de Facebook Request in Android
  • Android SDK de Facebook v3.0 SSO LoginButton devolver un nulo GraphUser
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.