6

我正在制作一个使用推特数字的应用程序,我想知道是否有一种方法可以在不使用显示“使用我的电话号码”的丑陋推特数字按钮的情况下使用它

4

5 回答 5

8

您必须以编程方式修改按钮,使用 xml 将不起作用。例如:

digitsButton.setText("Your text here");
digitsButton.setBackgroundColor(getResources().getColor(R.color.primary));
于 2015-07-24T22:02:41.373 回答
6

您可以使用自己的按钮,只需调用 Digits.authenticate()

final AuthCallback digitsCallback = new AuthCallback() {
    @Override
    public void success(DigitsSession session, String phoneNumber) {
        // Do something on success
    }

    @Override
    public void failure(DigitsException exception) {
        // Do something on failure
    }
};

findViewById(R.id.myButton).setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        Digits.authenticate(digitsCallback);
    }
});
于 2015-08-01T07:14:13.707 回答
3

试试这个自定义按钮的 OnClickListener:

AuthConfig.Builder builder = new AuthConfig.Builder();

builder.withAuthCallBack(new AuthCallback() {
    @Override
    public void success(DigitsSession session, String phoneNumber) {
        Toast.makeText(getApplicationContext(), "Authentication successful for "
            + phoneNumber, Toast.LENGTH_LONG).show();

            // Do something
         }

     @Override
     public void failure(DigitsException error) {
         // Do something
     }
});

AuthConfig authConfig = builder.build();

Digits.authenticate(authConfig);
于 2016-11-17T21:34:49.220 回答
1

现在你甚至得到了答案。但以防万一,自定义 DigitsAuth 按钮的最简单方法如下:

  1. 创建一个新的背景图像并将其命名为 dgts__digits_btn.png ==> 这将替换 digiAuth 按钮的 bg 图像。
  2. 通过在 dimens.xml 中添加 tw__login_btn_drawable_padding 属性来更改 DigitsAuthButton 按钮周围的填充
  3. 通过在 strings.xml 中添加名称为“dgts__login_digits_text”的字符串条目来更改默认 DigitsAuthButton 按钮文本
  4. 通过在 dimens.xml 中添加“tw__login_btn_text_size”来更改文本大小
  5. DigitsAuthButton 通过添加“tw__login_btn_right_padding”和dimens.xml 来填充按钮

希望这可以帮助。

于 2016-01-19T17:57:35.470 回答
0

使用 Android 数据绑定库

XML 文件

<layout xmlns:android="http://schemas.android.com/apk/res/android" >

    <data>

        <variable
            name="viewModel"
            type="package.DigitsViewModel" />
    </data>

    ...
    <com.digits.sdk.android.DigitsAuthButton
        ...
        android:text="@{viewModel.mDigitsButtonText}"
        android:background="@{viewModel.mDigitsButtonDrawable}" />

</layout>

数字视图模型文件

public final ObservableField<String> mDigitsButtonText = new ObservableField<>();
public final ObservableField<Drawable> mDigitsButtonDrawable = new ObservableField<>();

mDigitsButtonText.set("Your text here");
mDigitsButtonDrawable.set(ContextCompat.getDrawable(mContext, R.drawable.some_drawable));
于 2016-11-17T10:25:34.593 回答