Как удалить ProgressBar из Facebook войти SDK - PullRequest
0 голосов
/ 24 января 2019

При реализации входа в Facebook с помощью Android мне нужно отправить токен с моего внутреннего сервера, поэтому мне было интересно, могу ли я удалить индикатор выполнения и создать свой собственный прогресс, избавиться от него после получения токена Facebook и отправки на мой сервер. Появляется, когда я звоню:

LoginManager.getInstance().logInWithReadPermissions(Login.this,Arrays.asList("email"));

Ответы [ 2 ]

0 голосов
/ 24 января 2019

В вашем манифесте com.facebook.FacebookActivity

сменить тему как показано ниже

Android: тема = "@ андроид: стиль / Theme.NoDisplay"

вместо

Android: тема = "@ андроид: стиль / Theme.Translucent.NoTitleBar"

0 голосов
/ 24 января 2019

Вы можете удалить логин ProgressBar на Facebook следующим образом:

В values/styles.xml добавить следующий стиль:

<style name="Translucent" parent="Translucent.Base"/>

<style name="InvisibleProgress">
    <item name="android:visibility">gone</item>
</style>

<style name="Translucent.Base" parent="android:Theme.Translucent.NoTitleBar">
    <item name="android:progressBarStyle">@style/InvisibleProgress</item>
</style>

В values-v21/styles.xml добавить следующий стиль:

<style name="Translucent" parent="Translucent.Base">
    <item name="windowActionBar">false</item>
    <item name="windowNoTitle">true</item>
    <item name="android:windowDrawsSystemBarBackgrounds">true</item>
    <item name="android:statusBarColor">@android:color/transparent</item>
</style>

Затем в AndroidManifest.xml переопределите тему FacebookActivity:

<manifest
  ...
  xmlns:tools="http://schemas.android.com/tools"
>

...

<activity
    android:name="com.facebook.FacebookActivity"
    android:configChanges="keyboard|keyboardHidden|screenLayout|screenSize|orientation"
    android:label="@string/app_name"
    android:theme="@style/Translucent"
    tools:replace="android:theme"
/>

Теперь вы не увидите индикатор прогресса Facebook и сможете нарисовать свой собственный:)

...